<SEC-DOCUMENT>0000844965-25-000036.txt : 20250429
<SEC-HEADER>0000844965-25-000036.hdr.sgml : 20250429
<ACCEPTANCE-DATETIME>20250429170345
ACCESSION NUMBER:		0000844965-25-000036
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		62
CONFORMED PERIOD OF REPORT:	20250331
FILED AS OF DATE:		20250429
DATE AS OF CHANGE:		20250429

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			TETRA TECHNOLOGIES INC
		CENTRAL INDEX KEY:			0000844965
		STANDARD INDUSTRIAL CLASSIFICATION:	CRUDE PETROLEUM & NATURAL GAS [1311]
		ORGANIZATION NAME:           	01 Energy & Transportation
		EIN:				742148293
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			1231

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

	BUSINESS ADDRESS:	
		STREET 1:		24955 INTERSTATE 45 NORTH
		CITY:			THE WOODLANDS
		STATE:			TX
		ZIP:			77380
		BUSINESS PHONE:		2813671983

	MAIL ADDRESS:	
		STREET 1:		24955 INTERSTATE 45 NORTH
		CITY:			THE WOODLANDS
		STATE:			TX
		ZIP:			77380
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>tti-20250331.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:31d188f3-e502-4f84-8e46-ddb4fc1f350a,g:37a5f24c-bfcc-4cbd-95ae-bb27d63efc4d,d:41d7e6e5048a4bd8a433c145f33779da-->
<html xmlns:dei="http://xbrl.sec.gov/dei/2023" xmlns="http://www.w3.org/1999/xhtml" xmlns:country="http://xbrl.sec.gov/country/2023" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:tti="http://www.tetratec.com/20250331" xmlns:ecd="http://xbrl.sec.gov/ecd/2023" xmlns:srt="http://fasb.org/srt/2023" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:us-gaap="http://fasb.org/us-gaap/2023" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>tti-20250331</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="c-1" name="dei:EntityCentralIndexKey" id="f-28">0000844965</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:CurrentFiscalYearEndDate" id="f-29">--12-31</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:DocumentFiscalYearFocus" id="f-30">2025</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:DocumentFiscalPeriodFocus" id="f-31">Q1</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:AmendmentFlag" format="ixt:fixed-false" id="f-32">FALSE</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="tti-20250331.xsd"/></ix:references><ix:resources><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="usdPerShare"><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="segment"><xbrli:measure>tti:segment</xbrli:measure></xbrli:unit><xbrli:unit id="acre"><xbrli:measure>utr:acre</xbrli:measure></xbrli:unit><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="c-1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">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="c-3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:SeriesAPreferredStockMember</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="c-4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-04-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</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="c-6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</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="c-8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-10"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-11"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-12"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-13"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-14"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-15"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-16"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-17"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-18"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-19"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-20"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</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="c-21"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</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="c-22"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-23"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-24"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-25"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-26"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-27"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-28"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-29"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-32"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-33"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-34"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-35"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-36"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-37"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-38"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-39"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-40"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-41"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-42"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-43"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-44"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-45"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-46"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-47"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-48"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-49"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-50"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-51"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-52"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-07-01</xbrli:startDate><xbrli:endDate>2024-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-53"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</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="c-54"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-55"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-56"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</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="c-57"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-58"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</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="c-59"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-60"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</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="c-61"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-62"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</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="c-63"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-64"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</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="c-65"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-66"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</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="c-67"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-68"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</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-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-69"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-70"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</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="c-71"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-72"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-73"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-74"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-75"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-76"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-77"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-78"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-04-01</xbrli:startDate><xbrli:endDate>2024-04-01</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-79"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</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="c-80"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-81"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-82"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-12</xbrli:startDate><xbrli:endDate>2024-01-12</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-83"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tti:DelayedDrawTermLoanDDTLMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-01-12</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-84"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tti:DelayedDrawTermLoanDDTLMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-12</xbrli:startDate><xbrli:endDate>2024-01-12</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-85"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-01-12</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-86"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-87"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-88"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-89"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tti:SinglineLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-90"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-91"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-92"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:FedFundsEffectiveRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-93"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-94"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-95"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-96"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-97"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</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="c-98"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</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="c-99"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:SwedishCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-100"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:SwedishCreditFacilityMember</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="c-101"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:FinlandCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-102"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis">us-gaap:InventoriesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-103"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis">us-gaap:CapitalAdditionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-104"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis">us-gaap:CapitalAdditionsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-105"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">tti:OffshoreDivisionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tti:InitialBondsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-106"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">tti:OffshoreDivisionMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tti:InterimReplacementBondsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2018-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-107"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">tti:MaritechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-08-16</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-108"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-109"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-110"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">tti:MaritechMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-09-01</xbrli:startDate><xbrli:endDate>2024-09-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-111"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-112"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-113"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-114"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-115"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</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="c-116"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</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="c-117"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</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="c-118"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</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="c-119"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</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="c-120"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</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="c-121"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</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="c-122"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</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="c-123"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</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="c-124"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</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="c-125"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</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="c-126"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</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="c-127"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</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="c-128"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</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="c-129"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</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="c-130"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</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="c-131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-132"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-133"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-134"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-135"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-136"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-137"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-138"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-139"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-140"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-141"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-142"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-143"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-144"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-145"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-146"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-147"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-148"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-149"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-150"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-151"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-152"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-153"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-154"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-155"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-156"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-157"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-158"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-159"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-160"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-161"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-162"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-163"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</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="c-164"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</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="c-165"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</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="c-166"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-167"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-168"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-169"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-170"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-171"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2024-01-01</xbrli:startDate><xbrli:endDate>2024-03-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-172"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-173"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-174"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000844965</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-03-31</xbrli:instant></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i41d7e6e5048a4bd8a433c145f33779da_1"></div><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:400;line-height:120%">Washington D.C. 20549</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:16pt;font-weight:700;line-height:120%">FORM <ix:nonNumeric contextRef="c-1" name="dei:DocumentType" id="f-1">10-Q</ix:nonNumeric></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;(Mark One)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:DocumentQuarterlyReport" format="ixt:fixed-true" id="f-2">&#9746;</ix:nonNumeric></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"> QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the quarterly period ended <ix:nonNumeric contextRef="c-1" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="f-3">March 31, 2025</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">or&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:DocumentTransitionReport" format="ixt:fixed-false" id="f-4">&#9744;</ix:nonNumeric></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%"> TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;For the transition period from </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">to</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:2pt;font-weight:400;line-height:120%">.</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Commission File Number <ix:nonNumeric contextRef="c-1" name="dei:EntityFileNumber" id="f-5">1-13455</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:18pt;font-weight:700;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityRegistrantName" id="f-6">TETRA Technologies, Inc.</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">(Exact name of registrant as specified in its charter)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:4pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:48.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:48.900%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="f-7">Delaware</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityTaxIdentificationNumber" id="f-8">74-2148293</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(State or Other Jurisdiction of Incorporation or Organization)</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(I.R.S. Employer Identification No.)</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressAddressLine1" id="f-9">24955 Interstate 45 North</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressCityOrTown" id="f-10">The Woodlands,</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressStateOrProvince" format="ixt-sec:stateprovnameen" id="f-11">Texas</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityAddressPostalZipCode" id="f-12">77380</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Address of Principal Executive Offices)</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(Zip Code)</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">(<ix:nonNumeric contextRef="c-1" name="dei:CityAreaCode" id="f-13">281</ix:nonNumeric>) <ix:nonNumeric contextRef="c-1" name="dei:LocalPhoneNumber" id="f-14">367-1983</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">(Registrant&#8217;s Telephone Number, Including Area Code)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">_____________________________________</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">__________________________________</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Former Name, Former Address and Former Fiscal Year, if Changed Since Last Report</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160; </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Securities registered pursuant to Section 12(b) of the Act:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:36.528%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.350%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:36.822%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="border-left:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Title of each class</span></td><td colspan="3" style="border-left:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trading Symbol(s)</span></td><td colspan="3" style="border-left:1pt solid #000000;border-right:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Name of each exchange on which registered</span></td></tr><tr><td colspan="3" style="border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-2" name="dei:Security12bTitle" id="f-15">Common Stock</ix:nonNumeric></span></td><td colspan="3" style="border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-2" name="dei:TradingSymbol" id="f-16">TTI</ix:nonNumeric></span></td><td colspan="3" style="border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-2" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="f-17">New York Stock Exchange</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-3" name="dei:Security12bTitle" id="f-18">Preferred Share Purchase Right</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:1pt solid #000;border-left:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-3" name="dei:NoTradingSymbolFlag" format="ixt:fixed-true" id="f-19">N/A</ix:nonNumeric></span></td><td colspan="3" style="border-bottom:1pt solid #000;border-left:1pt solid #000;border-right:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-3" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="f-20">New York Stock Exchange</ix:nonNumeric></span></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports) and (2) has been subject to such filing requirements for the past 90 days. <ix:nonNumeric contextRef="c-1" name="dei:EntityCurrentReportingStatus" id="f-21">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160; No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9744;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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;&#160;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). <ix:nonNumeric contextRef="c-1" name="dei:EntityInteractiveDataCurrent" id="f-22">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160; No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9744;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, smaller reporting company, or an emerging growth company. See the definitions of &#8220;large accelerated filer,&#8221;&#160;&#8220;accelerated filer,&#8221; &#8220;smaller reporting company,&#8221; and &#8220;emerging growth company&#8221; in Rule 12b-2 of the Exchange Act.</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:26.465%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:22.946%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.093%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.096%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Large accelerated filer </span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="f-23">Accelerated filer</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#9746;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-accelerated filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Smaller reporting company</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntitySmallBusiness" format="ixt:fixed-false" id="f-24">&#9744;</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Emerging growth company </span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="c-1" name="dei:EntityEmergingGrowthCompany" format="ixt:fixed-false" id="f-25">&#9744;</ix:nonNumeric></span></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">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. </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:11pt;font-weight:400;line-height:120%">&#9744;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act). Yes </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="c-1" name="dei:EntityShellCompany" format="ixt:fixed-false" id="f-26">&#9744;</ix:nonNumeric></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160; No </span><span style="color:#000000;font-family:'Arial Unicode MS',sans-serif;font-size:12pt;font-weight:400;line-height:120%">&#9746;</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">As of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">April&#160;28, 2025, there were</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="shares" contextRef="c-4" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="f-27">133,072,970</ix:nonFraction> shares outstanding of the Company&#8217;s Common Stock, $0.01 par value per share.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_7"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:91.432%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.368%"/><td style="width:0.1%"/></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:100%">TETRA Technologies, Inc. and Subsidiaries</span></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Table of Contents</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Page</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">PART I&#8212;FINANCIAL INFORMATION</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_13">Item 1. Financial Statements</a></span></div></td><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_16">Consolidated Statements of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_16">1</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_19">Consolidated Statements of Comprehensive Income</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_19">2</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_22">Consolidated Balance Sheets</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_22">3</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_28">Consolidated Statements of Equity</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_28">5</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_31">Consolidated Statements of Cash Flows</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_31">6</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_34">Notes to Consolidated Financial Statements</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_34">7</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_76">Item 2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_76">18</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_106">Item 3. Quantitative and Qualitative Disclosures about Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_106">29</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_109">Item 4. Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_109">30</a></span></div></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">PART II&#8212;OTHER INFORMATION</span></td><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_115">Item 1. Legal Proceedings</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_115">31</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_118">Item 1A. Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_118">31</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_121">Item 2. Unregistered Sales of Equity Securities and Use of Proceeds</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_121">31</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_127">Item 3. Defaults Upon Senior Securities</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_127">31</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_130">Item 4. Mine Safety Disclosures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_130">31</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_133">Item 5. Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_133">31</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_136">Item 6. Exhibits</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_136">32</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_139">SIGNATURES</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i41d7e6e5048a4bd8a433c145f33779da_139">33</a></span></div></td></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_10"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">PART I</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">FINANCIAL INFORMATION</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_13"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1. Financial Statements.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_16"></div><div style="margin-top:12pt;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TETRA Technologies, Inc. and Subsidiaries</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Consolidated Statements of Operations</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(In Thousands, Except Per Share Amounts)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:63.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.469%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.471%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Revenues:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Product sales</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-33">88,169</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-34">73,337</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Services </span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-7" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-35">68,971</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-8" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-36">77,635</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:29.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total revenues</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-37">157,140</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-38">150,972</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of revenues:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of product sales</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-39">49,765</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-40">45,406</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of services </span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-7" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-41">54,800</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-8" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-42">65,708</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-43">9,151</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-44">8,756</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Impairments and other charges</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AssetImpairmentCharges" scale="3" id="f-45">518</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:AssetImpairmentCharges" format="ixt:fixed-zero" scale="3" id="f-46">&#8212;</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:29.25pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total cost of revenues</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-47">114,234</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:CostsAndExpenses" format="ixt:num-dot-decimal" scale="3" id="f-48">119,870</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:45pt;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-49">42,906</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="f-50">31,102</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-51">24,134</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-52">22,298</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="f-53">4,724</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:InterestExpense" format="ixt:num-dot-decimal" scale="3" id="f-54">5,952</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:fixed-zero" scale="3" id="f-55">&#8212;</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:num-dot-decimal" scale="3" id="f-56">5,535</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="f-57">8,962</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="f-58">3,978</ix:nonFraction>)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income before taxes</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-59">5,086</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-60">1,295</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for income taxes</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="3" id="f-61">1,037</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="f-62">380</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income attributable to TETRA stockholders</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="f-63">4,049</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:NetIncomeLoss" scale="3" id="f-64">915</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Basic net income per common share:</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income attributable to TETRA stockholders</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-65">0.03</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-9" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-66">0.01</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average basic shares outstanding</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-67">132,350</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-9" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-68">130,453</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Diluted net income per common share:</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:15.75pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income attributable to TETRA stockholders</span></div></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-1" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-69">0.03</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usdPerShare" contextRef="c-9" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-70">0.01</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Weighted average diluted shares outstanding</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-71">133,757</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-9" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-72">132,123</ix:nonFraction></span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:5pt;padding-left:13.5pt;text-align:justify;text-indent:-13.5pt"><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Notes to Consolidated Financial Statements</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">1</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_19"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TETRA Technologies, Inc. and Subsidiaries</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Consolidated Statements of Comprehensive Income (Loss)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(In Thousands)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">&#160;</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:63.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.469%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.471%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Net income</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-73">4,049</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:ProfitLoss" scale="3" id="f-74">915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Foreign currency translation adjustment from continuing operations, net of taxes of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" scale="0" id="f-75"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" scale="0" id="f-76"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" scale="0" id="f-77"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" scale="0" id="f-78">0</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> in 2025 and 2024</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-79">3,876</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-80">1,634</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Reclassification of non-cash cumulative foreign currency translation adjustment loss to net income from dissolution of Canadian subsidiary</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-81">9,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" format="ixt:fixed-zero" scale="3" id="f-82">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Unrealized gain on investment</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-83">281</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-84">237</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Comprehensive income (loss) attributable to TETRA stockholders</span></div></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-85">17,722</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3" id="f-86">482</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Notes to </span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Financial Statements</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_22"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TETRA Technologies, Inc. and Subsidiaries</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Consolidated Balance Sheets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(In Thousands)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">&#160;</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2024</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(Unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">ASSETS</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current assets:</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-87">41,000</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-88">36,987</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted cash</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue" scale="3" id="f-89">50</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue" scale="3" id="f-90">221</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade accounts receivable, net of allowances of $<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="f-91">537</ix:nonFraction> in 2025 and</span></div><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="3" id="f-92">626</ix:nonFraction> in 2024</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-93">120,902</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="f-94">104,813</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-95">106,486</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-96">101,697</ix:nonFraction></span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-97">22,616</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-98">25,910</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current assets</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-99">291,054</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="f-100">269,628</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Property, plant and equipment:</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Land and building</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="tti:LandAndBuilding" format="ixt:num-dot-decimal" scale="3" id="f-101">24,671</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="tti:LandAndBuilding" format="ixt:num-dot-decimal" scale="3" id="f-102">24,475</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Machinery and equipment</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:MachineryAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-103">327,680</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:MachineryAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-104">323,044</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Automobiles and trucks</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="tti:AutomobilesAndTrucks" format="ixt:num-dot-decimal" scale="3" id="f-105">10,540</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="tti:AutomobilesAndTrucks" format="ixt:num-dot-decimal" scale="3" id="f-106">10,325</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Chemical plants</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="tti:ChemicalPlants" format="ixt:num-dot-decimal" scale="3" id="f-107">72,198</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="tti:ChemicalPlants" format="ixt:num-dot-decimal" scale="3" id="f-108">69,815</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Construction in progress</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:ConstructionInProgressGross" format="ixt:num-dot-decimal" scale="3" id="f-109">41,423</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:ConstructionInProgressGross" format="ixt:num-dot-decimal" scale="3" id="f-110">34,910</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total property, plant and equipment</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-111">476,512</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="f-112">462,569</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Less accumulated depreciation</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-113">327,237</ix:nonFraction>)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-114">320,409</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net property, plant and equipment</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-115">149,275</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="f-116">142,160</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Patents, trademarks and other intangible assets, net of accumulated amortization of $<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-117">56,745</ix:nonFraction> in 2025 and $<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization" format="ixt:num-dot-decimal" scale="3" id="f-118">55,421</ix:nonFraction> in 2024</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="f-119">24,072</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" format="ixt:num-dot-decimal" scale="3" id="f-120">24,923</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred tax assets, net</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-121">97,181</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="f-122">98,149</ix:nonFraction></span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="f-123">30,584</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="f-124">29,797</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investments</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-125">9,686</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-126">28,159</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other assets</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-127">12,233</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-128">12,379</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total other assets</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="tti:TotalOtherAssets" format="ixt:num-dot-decimal" scale="3" id="f-129">173,756</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="tti:TotalOtherAssets" format="ixt:num-dot-decimal" scale="3" id="f-130">193,407</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-131">614,085</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-132">605,195</ix:nonFraction></span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Notes to Consolidated Financial Statements</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">3</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_25"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TETRA Technologies, Inc. and Subsidiaries</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Consolidated Balance Sheets</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(In Thousands, Except Share Amounts)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">&#160;</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,<br/>2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,<br/>2024</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(Unaudited)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">LIABILITIES AND EQUITY</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current liabilities:</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade accounts payable</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AccountsPayableCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-133">41,042</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AccountsPayableCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-134">43,103</ix:nonFraction></span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Compensation and employee benefits</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:DeferredIncomeCurrent" format="ixt:num-dot-decimal" scale="3" id="f-135">19,594</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:DeferredIncomeCurrent" format="ixt:num-dot-decimal" scale="3" id="f-136">23,022</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease liabilities, current portion</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-137">9,325</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="f-138">8,861</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued taxes</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:TaxesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="f-139">10,695</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:TaxesPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="f-140">12,493</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued liabilities and other</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-141">27,886</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AccruedLiabilitiesCurrentAndNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-142">30,040</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Current liabilities associated with discontinued operations</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-143">5,830</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" format="ixt:num-dot-decimal" scale="3" id="f-144">5,830</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total current liabilities</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-145">114,372</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="f-146">123,349</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Long-term debt, net</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-147">180,095</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-148">179,696</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-149">25,291</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-150">25,041</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Asset retirement obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AssetRetirementObligationsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-151">15,082</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AssetRetirementObligationsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-152">14,786</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="f-153">3,849</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:DeferredIncomeTaxLiabilitiesNet" format="ixt:num-dot-decimal" scale="3" id="f-154">4,912</ix:nonFraction></span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-155">3,653</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:OtherLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-156">4,104</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-term liabilities</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:LiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-157">227,970</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:LiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-158">228,539</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Commitments and contingencies (Note 6)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="f-159"></ix:nonFraction>&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="f-160"></ix:nonFraction>&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">TETRA stockholders&#8217; equity:</span></td><td colspan="3" style="padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Common stock, par value <ix:nonFraction unitRef="usdPerShare" contextRef="c-10" decimals="2" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="f-161"><ix:nonFraction unitRef="usdPerShare" contextRef="c-11" decimals="2" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="f-162">0.01</ix:nonFraction></ix:nonFraction> per share; <ix:nonFraction unitRef="shares" contextRef="c-11" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="f-163"><ix:nonFraction unitRef="shares" contextRef="c-10" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="f-164">250,000,000</ix:nonFraction></ix:nonFraction> shares authorized at March&#160;31, 2025 and December&#160;31, 2024; <ix:nonFraction unitRef="shares" contextRef="c-10" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="f-165">136,207,612</ix:nonFraction> shares issued at March&#160;31, 2025 and <ix:nonFraction unitRef="shares" contextRef="c-11" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="f-166">134,951,081</ix:nonFraction> shares issued at December&#160;31, 2024</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:CommonStockValue" format="ixt:num-dot-decimal" scale="3" id="f-167">1,362</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:CommonStockValue" format="ixt:num-dot-decimal" scale="3" id="f-168">1,350</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Additional paid-in capital</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:AdditionalPaidInCapital" format="ixt:num-dot-decimal" scale="3" id="f-169">493,424</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:AdditionalPaidInCapital" format="ixt:num-dot-decimal" scale="3" id="f-170">492,722</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Treasury stock, at cost; <ix:nonFraction unitRef="shares" contextRef="c-11" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="f-171"><ix:nonFraction unitRef="shares" contextRef="c-10" decimals="INF" name="us-gaap:TreasuryStockCommonShares" format="ixt:num-dot-decimal" scale="0" id="f-172">3,138,675</ix:nonFraction></ix:nonFraction> shares held at March&#160;31, 2025 and December&#160;31, 2024</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:TreasuryStockValue" format="ixt:num-dot-decimal" scale="3" id="f-173">19,957</ix:nonFraction>)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:TreasuryStockValue" format="ixt:num-dot-decimal" scale="3" id="f-174">19,957</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Accumulated other comprehensive loss</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-175">37,449</ix:nonFraction>)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-176">51,122</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Retained deficit</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="f-177">164,376</ix:nonFraction>)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="f-178">168,425</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Total TETRA stockholders&#8217; equity</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-179">273,004</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-180">254,568</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Noncontrolling interests</span></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" sign="-" name="us-gaap:MinorityInterest" format="ixt:num-dot-decimal" scale="3" id="f-181">1,261</ix:nonFraction>)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" sign="-" name="us-gaap:MinorityInterest" format="ixt:num-dot-decimal" scale="3" id="f-182">1,261</ix:nonFraction>)</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Total equity</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-183">271,743</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 7pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-184">253,307</ix:nonFraction></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total liabilities and equity</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-185">614,085</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="f-186">605,195</ix:nonFraction></span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">&#160;</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Notes to Consolidated Financial Statements</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">4</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_28"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TETRA Technologies, Inc. and Subsidiaries</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Consolidated Statements of Equity</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(In Thousands)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:24.303%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.535%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.976%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.976%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.710%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.710%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.563%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.060%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.129%"/><td style="width:0.1%"/></tr><tr style="height:27pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Common Stock<br/>Par Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Additional Paid-In<br/>Capital</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Treasury<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Other&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Comprehensive </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income (Loss)</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Retained<br/>Deficit</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Noncontrolling<br/>Interest</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total<br/>Equity</span></td></tr><tr style="height:36pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Currency<br/>Translation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unrealized Gain (Loss) on Investment</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at December 31, 2024</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-12" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-187">1,350</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-13" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-188">492,722</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-14" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-189">19,957</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-15" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-190">52,957</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-16" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-191">1,835</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-17" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-192">168,425</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-18" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-193">1,261</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-194">253,307</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income for first quarter 2025</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-19" decimals="-3" name="us-gaap:ProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-195">4,049</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-196">4,049</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Reclassification of non-cash cumulative foreign currency translation adjustment loss to net income from dissolution of Canadian subsidiary</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-20" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-197">9,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-198">9,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Translation adjustment, net of taxes of $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" scale="3" id="f-199">0</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-20" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-200">3,876</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-201">3,876</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other comprehensive income</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-21" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-202">281</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-203">281</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Comprehensive income</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-204">17,722</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Equity-based compensation</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-205">1,860</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-206">1,860</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-23" decimals="-3" sign="-" name="us-gaap:StockholdersEquityOther" scale="3" id="f-207">12</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-22" decimals="-3" name="us-gaap:StockholdersEquityOther" format="ixt:num-dot-decimal" scale="3" id="f-208">1,158</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:StockholdersEquityOther" format="ixt:num-dot-decimal" scale="3" id="f-209">1,146</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Balance at March 31, 2025</span></div></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-24" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-210">1,362</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-25" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-211">493,424</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-26" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-212">19,957</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-27" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-213">39,565</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-28" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-214">2,116</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-29" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-215">164,376</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-30" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-216">1,261</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-217">271,743</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:24.229%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.513%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:6.952%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.684%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.824%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.684%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.538%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.027%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.105%"/><td style="width:0.1%"/></tr><tr style="height:27pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Common Stock<br/>Par Value</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Additional Paid-In<br/>Capital</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Treasury<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated Other&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Comprehensive</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Income (Loss)</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Retained<br/>Deficit</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Noncontrolling<br/>Interest</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total<br/>Equity</span></td></tr><tr style="height:36pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Currency<br/>Translation</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Unrealized Gain (Loss) on Investment</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Balance at December 31, 2023</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-31" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-218">1,332</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-32" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-219">489,156</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-33" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-220">19,957</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-34" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-221">45,886</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-35" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3" id="f-222">655</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-36" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-223">276,709</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-37" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-224">1,257</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-38" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-225">147,334</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net income for first quarter 2024</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-39" decimals="-3" name="us-gaap:ProfitLoss" scale="3" id="f-226">915</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:ProfitLoss" scale="3" id="f-227">915</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Translation adjustment, net of taxes of $<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" scale="3" id="f-228">0</ix:nonFraction></span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-40" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-229">1,634</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-230">1,634</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other comprehensive income</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-41" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-231">237</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" scale="3" id="f-232">237</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Comprehensive loss</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" scale="3" id="f-233">482</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Equity-based compensation</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-42" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-234">1,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" format="ixt:num-dot-decimal" scale="3" id="f-235">1,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-43" decimals="-3" sign="-" name="us-gaap:StockholdersEquityOther" scale="3" id="f-236">11</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-42" decimals="-3" name="us-gaap:StockholdersEquityOther" format="ixt:num-dot-decimal" scale="3" id="f-237">2,339</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:StockholdersEquityOther" format="ixt:num-dot-decimal" scale="3" id="f-238">2,328</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">Balance at March 31, 2024</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-44" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-239">1,343</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-45" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-240">488,440</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-46" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-241">19,957</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-47" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-242">47,520</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-48" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="3" id="f-243">892</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-49" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-244">275,794</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(<ix:nonFraction unitRef="usd" contextRef="c-50" decimals="-3" sign="-" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-245">1,257</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-246">146,147</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Notes to </span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Financial Statements</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">5</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_31"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TETRA Technologies, Inc. and Subsidiaries</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Consolidated Statements of Cash Flows</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:120%">(In Thousands, Unaudited)</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating activities:</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProfitLoss" format="ixt:num-dot-decimal" scale="3" id="f-247">4,049</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:ProfitLoss" scale="3" id="f-248">915</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Reconciliation of net income to net cash provided by (used in) operating activities:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-249">9,151</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="f-250">8,755</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Impairments and other charges</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AssetImpairmentCharges" scale="3" id="f-251">518</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:AssetImpairmentCharges" format="ixt:fixed-zero" scale="3" id="f-252">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gain on investments</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome" scale="3" id="f-253">257</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome" format="ixt:num-dot-decimal" scale="3" id="f-254">2,795</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Equity-based compensation expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="f-255">1,860</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:ShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="f-256">1,623</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Recovery of credit losses</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="f-257">85</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="f-258">115</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;text-indent:-18pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization and expense of financing costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:AmortizationOfFinancingCosts" scale="3" id="f-259">495</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:AmortizationOfFinancingCosts" scale="3" id="f-260">380</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:fixed-zero" scale="3" id="f-261">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:num-dot-decimal" scale="3" id="f-262">5,535</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gain on sale of assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="3" id="f-263">113</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="3" id="f-264">29</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Non-cash cumulative foreign currency translation adjustment loss from dissolution of Canadian subsidiary</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="tti:NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="f-265">9,516</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="tti:NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" format="ixt:fixed-zero" scale="3" id="f-266">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other non-cash credits</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:OtherNoncashIncomeExpense" scale="3" id="f-267">128</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherNoncashIncomeExpense" scale="3" id="f-268">553</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Changes in operating assets and liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 31pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-269">15,584</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="f-270">19,605</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 31pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-271">2,663</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="f-272">1,542</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 31pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" format="ixt:num-dot-decimal" scale="3" id="f-273">6,158</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" format="ixt:num-dot-decimal" scale="3" id="f-274">3,918</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 31pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade accounts payable and accrued expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-275">9,277</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="f-276">5,577</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 31pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet" scale="3" id="f-277">295</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet" scale="3" id="f-278">26</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:42pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash provided by (used in) operating activities</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="f-279">3,935</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="f-280">13,816</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investing activities:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Purchases of property, plant and equipment, net</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-281">17,956</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="f-282">15,827</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from sale of investments</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:num-dot-decimal" scale="3" id="f-283">19,011</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments" format="ixt:fixed-zero" scale="3" id="f-284">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from sale of property, plant and equipment</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="3" id="f-285">182</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment" scale="3" id="f-286">251</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investing activities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" scale="3" id="f-287">108</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:PaymentsForProceedsFromOtherInvestingActivities" scale="3" id="f-288">172</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:40.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash provided by (used in) investing activities</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="f-289">1,345</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="f-290">15,748</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Financing activities:</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Proceeds from credit agreements and long-term debt</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" scale="3" id="f-291">96</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="f-292">184,456</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Principal payments on credit agreements and long-term debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebt" scale="3" id="f-293">96</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="f-294">163,215</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Payments on financing lease obligations</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="f-295">931</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:FinanceLeasePrincipalPayments" scale="3" id="f-296">277</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Debt issuance costs</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" format="ixt:fixed-zero" scale="3" id="f-297">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:PaymentsOfDebtIssuanceCosts" format="ixt:num-dot-decimal" scale="3" id="f-298">5,277</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares withheld for taxes on equity-based compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="f-299">1,158</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation" format="ixt:num-dot-decimal" scale="3" id="f-300">2,339</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:40.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash provided by (used in) financing activities</span></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="f-301">2,089</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="f-302">13,348</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Effect of exchange rate changes on cash</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="f-303">651</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="f-304">330</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Increase (decrease) in cash and cash equivalents</span></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-305">3,842</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" format="ixt:num-dot-decimal" scale="3" id="f-306">16,546</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash, cash equivalents and restricted cash at beginning of period </span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-307">37,208</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-38" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-308">52,485</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash, cash equivalents and restricted cash at end of period </span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-309">41,050</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-310">35,939</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:12pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Reconciliation of cash, cash equivalents and restricted cash to the consolidated balance sheets</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash and cash equivalents at end of period</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-311">41,000</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="3" id="f-312">35,939</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Restricted cash at end of period</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue" scale="3" id="f-313">50</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" name="us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue" format="ixt:fixed-zero" scale="3" id="f-314">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total cash, cash equivalents and restricted cash at end of period shown in the consolidated statements of cash flows</span></div></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-315">41,050</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="f-316">35,939</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Notes to </span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Financial Statements</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">6</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_34"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">TETRA Technologies, Inc. and Subsidiaries</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Notes to Consolidated Financial Statements</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">(Unaudited)</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_37"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 1 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:SignificantAccountingPoliciesTextBlock" id="f-317" continuedAt="f-317-1" escape="true">ORGANIZATION, BASIS OF PRESENTATION, AND SIGNIFICANT ACCOUNTING POLICIES</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-317-1" continuedAt="f-317-2"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Organization</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We are an energy services and solutions company with operations on six continents focused on developing environmentally conscious services and solutions that help make people's lives better. In </span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">addition to providing products and services to the oil and gas industry and calcium chloride for diverse applications, TETRA is expanding into the low-carbon energy market with chemistry expertise, key mineral acreage, and global infrastructure, helping to meet the demand for sustainable energy in the twenty-first century. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We were incorporated in Delaware in 1981. Our products and services are delivered through <ix:nonFraction unitRef="segment" contextRef="c-1" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="f-318">two</ix:nonFraction> reporting segments &#8211; Completion Fluids &amp; Products Division and Water &amp; Flowback Services Division.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Our Completion Fluids &amp; Products Division manufactures and markets clear brine fluids (&#8220;CBFs&#8221;), additives, and associated products and services to the oil and gas industry for use in well drilling, completion, and workover operations in the United States and in certain countries in Latin America, Europe, Asia, the Middle East, and Africa. The Division also markets liquid and dry calcium chloride products manufactured at its production facilities or purchased from third-party suppliers to a variety of markets outside the energy industry. Calcium chloride is used in the oil and gas industry, and also has broad industrial applications to the agricultural, road, food and beverage, and lithium production markets. Our Completion Fluids &amp; Products Division also markets TETRA PureFlow,</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:6.5pt;font-weight:400;line-height:112%;position:relative;top:-3.5pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">an ultra-pure zinc bromide, as well as TETRA PureFlow Plus, an ultra-pure zinc bromide/zinc chloride blend, to battery technology companies.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Our Water &amp; Flowback Services Division provides onshore oil and gas operators with comprehensive water management services. The Division also provides frac flowback, production well testing, and other associated services in many of the major oil and gas producing regions in the United States, as well as in oil and gas basins in certain countries in Latin America, Europe, and the Middle East. We are also developing and pilot testing technologies to treat and desalinate produced water from oil wells for beneficial reuse, including surface discharge.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unless the context requires otherwise, when we refer to &#8220;we,&#8221; &#8220;us,&#8221; and &#8220;our,&#8221; we are describing TETRA Technologies, Inc. and its subsidiaries on a consolidated basis.</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy" id="f-319" escape="true"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Presentation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our unaudited consolidated financial statements include the accounts of our wholly owned or controlled subsidiaries. All intercompany balances and transactions have been eliminated in consolidation. The information furnished reflects all normal recurring adjustments, which are, in the opinion of management, necessary to provide a fair statement of the results for the interim periods. Operating results for the period ended March&#160;31, 2025 are not necessarily indicative of results that may be expected for the twelve months ended December&#160;31, 2025.</span></div><div><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited consolidated financial statements have been prepared in accordance with Rule 10-01 of Regulation S-X for interim financial statements required to be filed with the U.S. Securities and Exchange Commission (&#8220;SEC&#8221;) and do not include all information and footnotes required by U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;) for complete financial statements. These financial statements should be read in conjunction with the financial statements for the year ended December&#160;31, 2024 and notes thereto included in our Annual Report on Form 10-K filed with the Securities and Exchange Commission on February&#160;25,&#160;2025 (the &#8220;</span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8221;).</span></div></ix:nonNumeric><div style="padding-left:2.25pt"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:DiscontinuedOperationsPolicyTextBlock" id="f-320" escape="true"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Discontinued Operations</span></div><div style="padding-left:2.25pt"><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In early 2018, we closed a series of related transactions that resulted in the disposition of our former Offshore segment. Our former Offshore segment is reported as discontinued operations for all periods presented. We may be required to satisfy certain decommissioning liabilities under third-party indemnity agreements and corporate guarantees for which costs may be significant. During the three months ended September 30, 2024, we accrued $<ix:nonFraction unitRef="usd" contextRef="c-52" decimals="-5" name="tti:DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" format="ixt:num-dot-decimal" scale="6" id="f-321">5.8</ix:nonFraction>&#160;million of decommissioning expense and liability associated with our former Offshore segment for which costs might be above the value of surety bonds on properties previously disposed. See Note 6 - &#8220;Commitments and Contingencies&#8221; for additional discussion of contingencies related to discontinued operations.</span></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">7</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="padding-left:2.25pt"><span><br/></span></div><ix:continuation id="f-317-2" continuedAt="f-317-3"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:112%">Significant Accounting Policies</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our significant accounting policies are described in the notes to our consolidated financial statements for the year ended December&#160;31, 2024 included in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Other than reporting restricted cash as described below, there have been no significant changes in our accounting policies or the application thereof during the first quarter of 2025.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Out-of-Period Correction</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three months ended March&#160;31, 2025, we recorded an adjustment to our deferred tax liability related to a correction to our 2024 tax provision. This adjustment increased income tax benefit by $<ix:nonFraction unitRef="usd" contextRef="c-53" decimals="-5" sign="-" name="us-gaap:IncomeTaxExpenseBenefit" format="ixt:num-dot-decimal" scale="6" id="f-322">1.2</ix:nonFraction>&#160;million and increased net income per share attributable to TETRA stockholders by $<ix:nonFraction unitRef="usdPerShare" contextRef="c-53" decimals="2" name="us-gaap:EarningsPerShareBasic" scale="0" id="f-323"><ix:nonFraction unitRef="usdPerShare" contextRef="c-53" decimals="2" name="us-gaap:EarningsPerShareDiluted" scale="0" id="f-324">0.01</ix:nonFraction></ix:nonFraction> in the consolidated statement of operations for the three months ended March 31, 2025. The Company assessed the impact of this out-of-period adjustment and concluded that it was not material to the financial statements previously issued for any interim or annual period, and the adjustment during the quarter ended March 31, 2025 is not expected to be material to the annual financial statements for 2025.</span></div><div style="text-indent:36pt"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" id="f-325" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Cash</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Restricted cash is classified as a current asset when it is expected to be repaid or settled in the next twelve-month period. In connection with the May 2024 amendment to our ABL Credit Agreement, our former administrative agent required us to collateralize our outstanding letters of credit until the letters of credit expired in March 2025. Restricted cash as of March&#160;31, 2025 consists of less than $<ix:nonFraction unitRef="usd" contextRef="c-54" decimals="-5" name="us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue" format="ixt:num-dot-decimal" scale="6" id="f-326">0.1</ix:nonFraction>&#160;million held in escrow in connection with our Arkansas development.</span></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:UseOfEstimates" id="f-327" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues, expenses, and impairments during the reporting period. Actual results could differ from those estimates, and such differences could be</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">material.</span></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="tti:MineralResourcesArrangementsPolicyTextBlock" id="f-328" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Mineral Resources Arrangement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have rights to the brine underlying our approximately <ix:nonFraction unitRef="acre" contextRef="c-10" decimals="-3" name="tti:GrossBrineLeaseAcres" format="ixt:num-dot-decimal" scale="0" id="f-329">40,000</ix:nonFraction> gross acres of brine leases in the Smackover Formation in Southwest Arkansas, including rights to the bromine and lithium contained in the brine. In June 2023, we entered into a memorandum of understanding (&#8220;MOU&#8221;) with Saltwerx LLC (&#8220;Saltwerx&#8221;), an indirect wholly owned subsidiary of ExxonMobil Corporation, relating to the Evergreen Unit, and potential bromine and lithium production from brine produced from the unit. We completed an initial preliminary economic assessment in early 2023 for the extraction of the brine and for a bromine processing plant. On January 8, 2024, we announced the completion of a technical resources report for the Evergreen Unit in Arkansas. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, we capitalized approximately $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-5" name="us-gaap:RecapitalizationCosts" format="ixt:num-dot-decimal" scale="6" id="f-330">11.2</ix:nonFraction>&#160;million and $<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-5" name="us-gaap:RecapitalizationCosts" format="ixt:num-dot-decimal" scale="6" id="f-331">4.1</ix:nonFraction>&#160;million, respectively, of costs associated with the development of our properties in Arkansas.</span></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" id="f-332" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Currency Translation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have designated the Euro, the British pound, the Canadian dollar, the</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Brazilian real as the functional currencies for our operations in Finland and Sweden, the United Kingdom, Canada and Brazil, respectively. The United States dollar is the designated functional currency for most of our other non-U.S. operations. The cumulative translation effects of translating the applicable accounts from the functional currencies into the United States dollar at current exchange rates are included as a separate component of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">equity. Foreign currency exchange (gains) losses are included in other (income) expense, net and totaled $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-5" sign="-" name="us-gaap:ForeignCurrencyTransactionGainLossRealized" format="ixt:num-dot-decimal" scale="6" id="f-333">8.8</ix:nonFraction>&#160;million and $(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-5" name="us-gaap:ForeignCurrencyTransactionGainLossRealized" format="ixt:num-dot-decimal" scale="6" id="f-334">0.2</ix:nonFraction>)&#160;million during the three months ended March&#160;31, 2025 and March&#160;31, 2024, respectively. Foreign currency exchange losses during the three months ended March&#160;31, 2025 include recognition of a $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-5" sign="-" name="us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" scale="6" id="f-335">9.5</ix:nonFraction> million cumulative foreign currency translation adjustment loss, which was reclassified from accumulated other comprehensive loss due to the dissolution of our former subsidiary in Canada during the three months ended March&#160;31, 2025.</span></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">8</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="f-317-3"><ix:nonNumeric contextRef="c-1" name="us-gaap:FairValueOfFinancialInstrumentsPolicy" id="f-336" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Fair Value Measurements</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We utilize fair value measurements to account for certain items and account balances within our consolidated financial statements. Fair value measurements are utilized on a recurring basis in the determination of the carrying values of certain investments. See Note 7 - &#8220;Fair Value Measurements&#8221; for further discussion. Fair value measurements are also utilized on a nonrecurring basis in certain circumstances, including the impairment of long-lived assets (a Level 3 fair value measurement).</span></div></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Supplemental Cash Flow Information</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" id="f-337" escape="true"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information is as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest paid</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="f-338">4,999</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:InterestPaidNet" format="ixt:num-dot-decimal" scale="3" id="f-339">5,406</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes paid</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeTaxesPaid" format="ixt:num-dot-decimal" scale="3" id="f-340">3,360</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:IncomeTaxesPaid" scale="3" id="f-341">433</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" format="ixt:num-dot-decimal" scale="3" id="f-342">5,292</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-55" decimals="-3" name="us-gaap:CapitalExpendituresIncurredButNotYetPaid" format="ixt:num-dot-decimal" scale="3" id="f-343">7,131</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock" id="f-344" escape="true"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">New Accounting Pronouncements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Standards not yet adopted</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In November 2024, the FASB issued Accounting Standards Update (&#8220;ASU&#8221;) 2024-03, &#8220;Income Statement&#8211;Reporting Comprehensive Income&#8211;Expense Disaggregation Disclosures (Subtopic 220-40)&#8221; ("ASU 2024-03"). ASU 2024-03 requires additional disclosures about certain expenses included in the income statement, including purchases of inventory, employee compensation, intangible asset amortization and depreciation. ASU 2024-03 is effective for annual periods beginning after December 15, 2026 and interim reporting periods beginning after December 15, 2027 with early adoption permitted. The Company is currently evaluating the impact of ASU 2024-03 on its financial statements and related disclosures</span><span style="color:#000000;font-family:'Aptos',san-serif;font-size:12pt;font-weight:400;line-height:115%">.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In December 2023, the FASB issued ASU 2023-09, &#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#8221; The new standard requires companies to disclose specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 is effective for annual reporting periods beginning after December 15, 2024, with early adoption permitted.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company is currently evaluating the expected impact of these standards but does not expect them to have a significant impact on its consolidated financial statements upon adoption as the standards expand disclosures only.</span></div></ix:nonNumeric></ix:continuation><div id="i41d7e6e5048a4bd8a433c145f33779da_43"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 2 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="f-345" continuedAt="f-345-1" escape="true">REVENUE</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-345-1" continuedAt="f-345-2"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue from Contracts with Customers</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contract asset balances, primarily associated with contractual invoicing milestones and/or customer documentation requirements, were $<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-5" name="us-gaap:ContractWithCustomerAssetNetCurrent" format="ixt:num-dot-decimal" scale="6" id="f-346">26.3</ix:nonFraction>&#160;million and $<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-5" name="us-gaap:ContractWithCustomerAssetNetCurrent" scale="6" id="f-347">30.4</ix:nonFraction> million as of March&#160;31, 2025 and December&#160;31, 2024, respectively. Contract assets, along with billed trade accounts receivable, are included in trade accounts receivable in our consolidated balance sheets.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unearned income includes amounts in which the Company was contractually allowed to invoice prior to satisfying the associated performance obligations. Unearned income balances were $<ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-5" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="6" id="f-348">0.6</ix:nonFraction>&#160;million and $<ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-5" name="us-gaap:ContractWithCustomerLiability" format="ixt:num-dot-decimal" scale="6" id="f-349">0.4</ix:nonFraction>&#160;million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and vary based on the timing of invoicing and performance obligations being met. Unearned income is included in accrued liabilities and other in our consolidated balance sheets. We recognized approximately $<ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-5" name="tti:ContractWithCustomerLiabilityRevenueRecognizedNet" format="ixt:num-dot-decimal" scale="6" id="f-350">0.1</ix:nonFraction>&#160;million and $<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-5" name="tti:ContractWithCustomerLiabilityRevenueRecognizedNet" format="ixt:num-dot-decimal" scale="6" id="f-351">0.1</ix:nonFraction>&#160;million during the three months ended </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">9</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="f-345-2"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">March&#160;31, 2025 and March&#160;31, 2024, respectively, deferred in unearned income as of the beginning of the period. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, contract costs were not significant.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We disaggregate revenue from contracts with customers into Product Sales and Services within each segment, as noted in our <ix:nonFraction unitRef="segment" contextRef="c-1" decimals="INF" name="us-gaap:NumberOfReportableSegments" format="ixt-sec:numwordsen" scale="0" id="f-352">two</ix:nonFraction> reportable segments in Note 9 - &#8220;Industry Segments.&#8221; <ix:nonNumeric contextRef="c-1" name="us-gaap:DisaggregationOfRevenueTableTextBlock" id="f-353" continuedAt="f-353-1" escape="true">In addition, we disaggregate revenue from contracts with customers by geography based on the following table below.</ix:nonNumeric></span></div><ix:continuation id="f-353-1"><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:63.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.469%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.471%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-56" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-354">61,144</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-355">41,437</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-58" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-356">31,874</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-357">35,845</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-60" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-358">93,018</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-61" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-359">77,282</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-62" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-360">55,878</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-361">64,711</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-64" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-362">8,244</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-65" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-363">8,979</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-66" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-364">64,122</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-67" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-365">73,690</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-68" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-366">117,022</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-69" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-367">106,148</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-70" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-368">40,118</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-71" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-369">44,824</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-370">157,140</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-371">150,972</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:continuation></ix:continuation><div id="i41d7e6e5048a4bd8a433c145f33779da_46"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 3 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:InventoryDisclosureTextBlock" id="f-372" continuedAt="f-372-1" escape="true">INVENTORIES</ix:nonNumeric></span></div><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="f-373" escape="true"><ix:continuation id="f-372-1" continuedAt="f-372-2"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of inventories as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:InventoryFinishedGoods" format="ixt:num-dot-decimal" scale="3" id="f-374">89,804</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:InventoryFinishedGoods" format="ixt:num-dot-decimal" scale="3" id="f-375">90,919</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:InventoryRawMaterials" format="ixt:num-dot-decimal" scale="3" id="f-376">7,023</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:InventoryRawMaterials" format="ixt:num-dot-decimal" scale="3" id="f-377">1,599</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Parts and supplies</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:OtherInventorySupplies" format="ixt:num-dot-decimal" scale="3" id="f-378">7,681</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:OtherInventorySupplies" format="ixt:num-dot-decimal" scale="3" id="f-379">7,297</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:InventoryWorkInProcess" format="ixt:num-dot-decimal" scale="3" id="f-380">1,978</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:InventoryWorkInProcess" format="ixt:num-dot-decimal" scale="3" id="f-381">1,882</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total inventories</span></div></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-382">106,486</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="f-383">101,697</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:continuation></ix:nonNumeric><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="f-372-2">Finished goods inventories include newly manufactured clear brine fluids as well as used brines that are repurchased from certain customers for recycling</ix:continuation>.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_49"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 4 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:InvestmentTextBlock" id="f-384" continuedAt="f-384-1" escape="true">INVESTMENTS</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-384-1" continuedAt="f-384-2"><ix:nonNumeric contextRef="c-1" name="us-gaap:InvestmentsInAndAdvancesToAffiliatesTextBlock" id="f-385" escape="true"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our investments as of March&#160;31, 2025 and December&#160;31, 2024 consist of the following:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"/><td style="width:62.710%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.625%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.538%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.627%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Kodiak</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-72" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-386">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-73" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-387">18,393</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-74" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-388">1,016</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-75" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-389">1,168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-76" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-390">8,670</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-77" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-391">8,598</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Investments</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-392">9,686</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-393">28,159</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2025, we sold our Kodiak Gas Services, Inc. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">(NYSE: KGS) (&#8220;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Kodiak&#8221;) shares for proceeds of $<ix:nonFraction unitRef="usd" contextRef="c-78" decimals="-5" name="us-gaap:ProceedsFromSaleOfEquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="6" id="f-394">19.0</ix:nonFraction>&#160;million, net of transaction and broker fees. During the three months ended March&#160;31, 2025, we recorded a net gain of $<ix:nonFraction unitRef="usd" contextRef="c-79" decimals="-5" name="us-gaap:GainLossOnSaleOfInvestments" format="ixt:num-dot-decimal" scale="6" id="f-395">0.6</ix:nonFraction>&#160;million from the sale of our Kodiak shares.</span></div></ix:continuation><div style="padding-left:2.25pt;text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="f-384-2"><div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we are party to agreements whereby Standard Lithium has the right to explore for, and an option to acquire the rights to produce and extract, lithium in our Arkansas leases and other additional potential resources in the Mojave region of California. The Company received stock of Standard Lithium under the terms of the arrangements.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">We also hold investments in convertible notes, common units and preferred units issued by two privately-held companies. These convertible notes, common units and preferred units are not publicly traded and may not be offered, sold, transferred or pledged until such common units are registered pursuant to an effective registration statement or pursuant to an exemption from registration. Our exposure to potential losses is limited to our investments, including capitalized and accrued interest associated with the convertible notes.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 7 - &#8220;Fair Value Measurements&#8221; for further information.</span></div></ix:continuation><div id="i41d7e6e5048a4bd8a433c145f33779da_52"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 5 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:DebtDisclosureTextBlock" id="f-396" continuedAt="f-396-1" escape="true">LONG-TERM DEBT AND OTHER BORROWINGS</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-396-1" continuedAt="f-396-2"><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfDebtTableTextBlock" id="f-397" escape="true"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated long-term debt as of March&#160;31, 2025 and December&#160;31, 2024 consists of the following:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:43.636%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.882%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.449%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Scheduled Maturity</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term Credit Agreement</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">January 1, 2030</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-80" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-398">180,095</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-399">179,696</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-400">180,095</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="f-401">179,696</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Net of unamortized discount of $<ix:nonFraction unitRef="usd" contextRef="c-80" decimals="-5" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet" format="ixt:num-dot-decimal" scale="6" id="f-402">4.8</ix:nonFraction>&#160;million and $<ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-5" name="us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet" scale="6" id="f-403">5.0</ix:nonFraction> million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and net of unamortized deferred financing costs of $<ix:nonFraction unitRef="usd" contextRef="c-80" decimals="-5" name="us-gaap:UnamortizedDebtIssuanceExpense" scale="6" id="f-404">5.1</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="c-81" decimals="-5" name="us-gaap:UnamortizedDebtIssuanceExpense" scale="6" id="f-405">5.3</ix:nonFraction> million as of March&#160;31, 2025 and December&#160;31, 2024, respectively.</span></div></ix:nonNumeric><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Term Credit Agreement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pricing on the Term Credit Agreement is the secured overnight financing rate (&#8220;SOFR&#8221;) plus <ix:nonFraction unitRef="number" contextRef="c-82" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-406">5.75</ix:nonFraction>%. The interest rate per annum on borrowings under the Term Credit Agreement is <ix:nonFraction unitRef="number" contextRef="c-80" decimals="4" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="f-407">10.17</ix:nonFraction>% as of March&#160;31, 2025 and the maturity date of the Term Credit Agreement is January&#160;1, 2030. The Term Credit Agreement includes a $<ix:nonFraction unitRef="usd" contextRef="c-83" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="f-408">75</ix:nonFraction> million delayed-draw term loan available until January 12, 2026 to provide capital to advance our Arkansas bromine processing project. The Company is required to pay a commitment fee on the unutilized commitments with respect to the delayed-draw term loan at the rate of <ix:nonFraction unitRef="number" contextRef="c-84" decimals="3" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="f-409">1.5</ix:nonFraction>% per annum.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Term Credit Agreement contains certain affirmative and negative covenants, including covenants that restrict the ability of the Company and certain of its subsidiaries to take certain actions including, among other things and subject to certain significant exceptions, the incurrence of debt, the granting of liens, engaging in mergers and other fundamental changes, the making of investments, entering into transactions with affiliates, the payment of dividends and other restricted payments, the prepayment of other indebtedness and the sale of assets. The Term Credit Agreement also requires the Company to maintain a Leverage Ratio (as defined in the Term Credit Agreement) of not more than <ix:nonFraction unitRef="number" contextRef="c-85" decimals="INF" name="tti:DebtInstrumentCovenantLeverageRatioMaximum" scale="0" id="f-410">4.0</ix:nonFraction> to 1.0 as of the end of each fiscal quarter and Liquidity (as defined in the Term Credit Agreement) of not less than $<ix:nonFraction unitRef="usd" contextRef="c-85" decimals="INF" name="tti:DebtInstrumentCovenantLiquidityMinimumAmount" format="ixt:num-dot-decimal" scale="6" id="f-411">50.0</ix:nonFraction>&#160;million at all times.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All obligations under the Term Credit Agreement and the guarantees of those obligations are secured, subject to certain exceptions, by a security interest on substantially all of the property of the Company and its domestic subsidiaries, subject to the lien priorities set forth in the intercreditor agreement with the agent under our ABL Credit Agreement.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Term Credit Agreement requires us to offer to prepay a percentage of Excess Cash Flow (as defined in the Term Credit Agreement) within five business days of filing our Annual Report.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Term Credit Agreement includes customary events of default including non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations or warranties, cross-default to other material indebtedness, bankruptcy and insolvency events, invalidity or impairment of security interests or invalidity of loan documents, certain ERISA events, unsatisfied or unstayed judgments and change of control.</span></div></ix:continuation><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="f-396-2"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">ABL Credit Agreement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">As of March&#160;31, 2025, we had <ix:nonFraction unitRef="usd" contextRef="c-86" decimals="INF" name="us-gaap:LineOfCredit" format="ixt:fixed-zero" scale="6" id="f-412">no</ix:nonFraction> borrowings outstanding and $<ix:nonFraction unitRef="usd" contextRef="c-86" decimals="-5" name="us-gaap:LettersOfCreditOutstandingAmount" format="ixt:num-dot-decimal" scale="6" id="f-413">0.2</ix:nonFraction>&#160;million letters of credit or guarantees</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">under our ABL Credit Agreement. Deferred financing costs of&#160;$<ix:nonFraction unitRef="usd" contextRef="c-86" decimals="-5" name="us-gaap:OtherDeferredCostsNet" format="ixt:num-dot-decimal" scale="6" id="f-414">1.0</ix:nonFraction>&#160;million&#160;and $<ix:nonFraction unitRef="usd" contextRef="c-87" decimals="-5" name="us-gaap:OtherDeferredCostsNet" format="ixt:num-dot-decimal" scale="6" id="f-415">1.0</ix:nonFraction>&#160;million as of&#160;March&#160;31, 2025 and December&#160;31, 2024, respectively, were classified as other long-term assets on the accompanying consolidated balance sheet as there was <ix:nonFraction unitRef="usd" contextRef="c-86" decimals="INF" name="us-gaap:LineOfCredit" format="ixt:fixed-zero" scale="0" id="f-416"><ix:nonFraction unitRef="usd" contextRef="c-87" decimals="INF" name="us-gaap:LineOfCredit" format="ixt:fixed-zero" scale="0" id="f-417">no</ix:nonFraction></ix:nonFraction> outstanding balance on our ABL Credit Agreement. As of March&#160;31, 2025, our ABL Credit Agreement provides, with certain restrictions, for a senior secured revolving credit facility of up to $<ix:nonFraction unitRef="usd" contextRef="c-86" decimals="INF" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="f-418">100.0</ix:nonFraction>&#160;million with a $<ix:nonFraction unitRef="usd" contextRef="c-86" decimals="-5" name="tti:LineOfCreditFacilityAdditionalBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="f-419">25.0</ix:nonFraction>&#160;million accordion. The credit facility is subject to a borrowing base determined monthly by reference to the value of inventory and accounts receivable, and includes a sublimit of $<ix:nonFraction unitRef="usd" contextRef="c-88" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="f-420">20.0</ix:nonFraction>&#160;million for letters of credit, and a swingline loan sublimit of $<ix:nonFraction unitRef="usd" contextRef="c-89" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="f-421">11.5</ix:nonFraction>&#160;million. The ABL Credit Agreement matures on May&#160;13, 2029. Subject to compliance with the covenants, borrowing base, and other provisions of the ABL Credit Agreement that may limit borrowings, we had availability of $<ix:nonFraction unitRef="usd" contextRef="c-86" decimals="-5" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="f-422">87.1</ix:nonFraction>&#160;million under this agreement.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the ABL Credit Agreement bear interest at a rate per annum equal to, at the option of TETRA, either (i) the standard overnight financing rate plus <ix:nonFraction unitRef="number" contextRef="c-90" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-423">0.10</ix:nonFraction>%, (ii) a base rate plus a margin based on a fixed charge coverage ratio, or (iii) the Daily Simple Risk Free Rate plus <ix:nonFraction unitRef="number" contextRef="c-91" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-424">0.10</ix:nonFraction>%. The base rate is determined by reference to the highest of (a) the prime rate of interest as announced from time to time by Bank of America, N.A. (b) the Federal Funds Effective Rate (as defined in the ABL Credit Agreement) plus <ix:nonFraction unitRef="number" contextRef="c-92" decimals="3" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-425">0.5</ix:nonFraction>% per annum and (c) the standard overnight financing rate (adjusted to reflect any required bank reserves) for a one-month period on such day plus <ix:nonFraction unitRef="number" contextRef="c-93" decimals="3" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-426">1.0</ix:nonFraction>% per annum, provided that the base rate shall not be less than <ix:nonFraction unitRef="number" contextRef="c-93" decimals="3" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-427">1.0</ix:nonFraction>%. Borrowings outstanding have an applicable margin ranging from <ix:nonFraction unitRef="number" contextRef="c-94" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-428">2.00</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="c-95" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-429">2.50</ix:nonFraction>% per annum for SOFR-based loans and <ix:nonFraction unitRef="number" contextRef="c-96" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-430">1.00</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="c-97" decimals="4" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" id="f-431">1.50</ix:nonFraction>% per annum for base-rate loans, based upon the applicable fixed charge coverage ratio. In addition to paying interest on the outstanding principal under the ABL Credit Agreement, TETRA is required to pay a commitment fee in respect of the unutilized commitments at an applicable rate of <ix:nonFraction unitRef="number" contextRef="c-98" decimals="5" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="f-432">0.375</ix:nonFraction>% per annum. TETRA is also required to pay a customary letter of credit fee equal to the applicable margin on loans and fronting fees.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160; All obligations under the ABL Credit Agreement and the guarantees of those obligations are secured, subject to certain exceptions, by a security interest for the benefit of the ABL Lenders on substantially all of the personal property of TETRA and certain subsidiaries of TETRA, the equity interests in certain domestic subsidiaries, and a maximum of <ix:nonFraction unitRef="number" contextRef="c-86" decimals="INF" name="tti:DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" scale="-2" id="f-433">65</ix:nonFraction>% of the equity interests in certain foreign subsidiaries.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Swedish Credit Facility</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2022, the Company entered into a revolving credit facility for seasonal working capital needs of subsidiaries in Sweden (&#8220;Swedish Credit Facility&#8221;). As of March&#160;31, 2025, we had <ix:nonFraction unitRef="usd" contextRef="c-99" decimals="INF" name="us-gaap:LineOfCredit" format="ixt:fixed-zero" scale="3" id="f-434">no</ix:nonFraction> balance outstanding and availability of approximately $<ix:nonFraction unitRef="usd" contextRef="c-99" decimals="-5" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="f-435">5.0</ix:nonFraction>&#160;million under the Swedish Credit Facility. During each year, all outstanding loans under the Swedish Credit Facility must be repaid for at least <ix:nonNumeric contextRef="c-100" name="us-gaap:DebtInstrumentTerm" format="ixt-sec:durday" id="f-436">30</ix:nonNumeric> consecutive days. Borrowings bear interest at a rate of <ix:nonFraction unitRef="number" contextRef="c-99" decimals="4" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="f-437">2.95</ix:nonFraction>% per annum. The Swedish Credit Facility expires on December 31, 2025 and the Company intends to renew it annually.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Finland Credit Agreement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2022, the Company also entered into an agreement guaranteed by certain accounts receivable and inventory in Finland (&#8220;Finland Credit Agreement&#8221;). As of March&#160;31, 2025, there were $<ix:nonFraction unitRef="usd" contextRef="c-101" decimals="-5" name="us-gaap:LineOfCredit" format="ixt:num-dot-decimal" scale="6" id="f-438">1.5</ix:nonFraction>&#160;million of letters of credit outstanding against the Finland Credit Agreement. The Finland Credit Agreement expires on January 31, 2026 and the Company intends to renew it annually.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Covenants</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our credit agreements contain certain affirmative and negative covenants, including covenants that restrict the ability to pay dividends or other restricted payments. As of March&#160;31, 2025, we are in compliance with all covenants under the credit agreements.</span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">12</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_58"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 6 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="f-439" continuedAt="f-439-1" escape="true">COMMITMENTS AND CONTINGENCIES</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-439-1" continuedAt="f-439-2"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Litigation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are named defendants in several lawsuits and respondents in certain governmental proceedings arising in the ordinary course of business. While the outcome of lawsuits or other proceedings against us cannot be predicted with certainty, management does not consider it reasonably possible that a loss resulting from such lawsuits or other proceedings in excess of any amounts accrued has been incurred that is expected to have a material adverse impact on our financial condition, results of operations, or liquidity.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">There have been no material developments in our legal proceedings during the quarter ended March&#160;31, 2025. For additional discussion of our legal proceedings, please see our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Product Purchase Obligations</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the normal course of our Completion Fluids &amp; Products Division operations, we enter into supply agreements with certain manufacturers of various raw materials and finished products. Some of these agreements have terms and conditions that specify a minimum or maximum level of purchases over the term of the agreement. Other agreements require us to purchase the entire output of the raw material or finished product produced by the manufacturer. Our purchase obligations under these agreements apply only with regard to raw materials and finished products that meet specifications set forth in the agreements. We recognize a liability for the purchase of such products at the time we receive them. As of March&#160;31, 2025, the aggregate amount of the fixed and determinable portion of the purchase obligation pursuant to our Completion Fluids &amp; Products Division&#8217;s supply agreements was approximately $<ix:nonFraction unitRef="usd" contextRef="c-102" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount" format="ixt:num-dot-decimal" scale="6" id="f-440">55.9</ix:nonFraction>&#160;million, including $<ix:nonFraction unitRef="usd" contextRef="c-102" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" format="ixt:num-dot-decimal" scale="6" id="f-441">17.4</ix:nonFraction>&#160;million for the remainder of 2025, $<ix:nonFraction unitRef="usd" contextRef="c-102" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary" format="ixt:num-dot-decimal" scale="6" id="f-442">22.2</ix:nonFraction>&#160;million in 2026, $<ix:nonFraction unitRef="usd" contextRef="c-102" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary" format="ixt:num-dot-decimal" scale="6" id="f-443">15.4</ix:nonFraction>&#160;million in 2027, and $<ix:nonFraction unitRef="usd" contextRef="c-102" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary" format="ixt:num-dot-decimal" scale="6" id="f-444">0.9</ix:nonFraction>&#160;million in 2028. As of March&#160;31, 2025, our Water &amp; Flowback Services division had an obligation to purchase equipment for approximately $<ix:nonFraction unitRef="usd" contextRef="c-103" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" format="ixt:num-dot-decimal" scale="6" id="f-445">4.0</ix:nonFraction>&#160;million during the year ending December 31, 2025. As of March&#160;31, 2025, we also have commitments of $<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount" format="ixt:num-dot-decimal" scale="6" id="f-446">23.8</ix:nonFraction>&#160;million related to long-lead power infrastructure for our Completion Fluids &amp; Products Division&#8217;s proposed bromine plant in Arkansas, including $<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" format="ixt:num-dot-decimal" scale="6" id="f-447">10.3</ix:nonFraction>&#160;million due during the remainder of 2025 and $<ix:nonFraction unitRef="usd" contextRef="c-104" decimals="-5" name="us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive" format="ixt:num-dot-decimal" scale="6" id="f-448">13.5</ix:nonFraction>&#160;million due over five years beginning after electric service is available.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contingencies Related to Discontinued Operations</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In early 2018, we closed the Maritech Asset Purchase and Sale Agreement (&#8220;Maritech APA") and Maritech Membership Interest Purchase Agreement (&#8220;Maritech MIPA&#8221;) with Orinoco Natural Resources, LLC (&#8220;Orinoco&#8221;) that together provided for the purchase by Orinoco of all of Maritech&#8217;s remaining oil and gas properties and related assets and all outstanding membership interests of Maritech. Under the Maritech APA, Orinoco assumed responsibility for all of Maritech&#8217;s decommissioning liabilities related to the leases sold to Orinoco (the &#8220;Orinoco Lease Liabilities&#8221;) and, under the Maritech MIPA, Orinoco assumed all other liabilities of Maritech, including the decommissioning liabilities associated with Maritech&#8217;s interests in oil and gas properties previously sold by Maritech and select infrastructure still operated by Maritech (the &#8220;Legacy Liabilities&#8221;), subject to certain limited exceptions unrelated to the decommissioning liabilities. To the extent that Maritech or Orinoco fails to satisfy decommissioning liabilities associated with any of the Orinoco Lease Liabilities or the Legacy Liabilities, we may be required to satisfy such liabilities under third party indemnity agreements and corporate guarantees that we previously provided to the U.S. Department of the Interior (&#8220;BSEE&#8221;) and other parties, respectively, for which costs may be significant. Pursuant to a Bonding Agreement entered into as part of these Orinoco transactions (the &#8220;Bonding Agreement&#8221;), Orinoco provided non-revocable performance bonds from a surety company in an aggregate amount of $<ix:nonFraction unitRef="usd" contextRef="c-105" decimals="-5" name="tti:DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" format="ixt:num-dot-decimal" scale="6" id="f-449">46.8</ix:nonFraction>&#160;million to cover the performance by Orinoco and Maritech of certain specific asset retirement obligations of Maritech (the &#8220;Initial Bonds&#8221;) and agreed to replace the Initial Bonds with other non-revocable performance bonds in the aggregate sum of $<ix:nonFraction unitRef="usd" contextRef="c-106" decimals="-5" name="tti:DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" format="ixt:num-dot-decimal" scale="6" id="f-450">47.0</ix:nonFraction>&#160;million (collectively, the &#8220;Replacement Bonds&#8221;). In the event Orinoco does not provide the Replacement Bonds, Orinoco is required to make certain cash escrow payments to us. To date, no cash escrow payments have been made. On August 16, 2024, we issued a letter to Orinoco and the bond company demanding realignment of the existing bonds and/or issuance of Replacement Bonds pursuant to the terms of the Bonding Agreement to better align bond coverage with the more likely liability risks. To date, no written response has been received.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The payment obligations of Orinoco under the Bonding Agreement were guaranteed by Thomas M. Clarke and Ana M. Clarke pursuant to a separate guaranty agreement (the &#8220;Clarke Bonding Guaranty Agreement&#8221;). Orinoco has not delivered the Replacement Bonds and neither it nor the Clarkes has made any of the agreed upon cash escrow payments. We filed a lawsuit against Orinoco and the Clarkes to enforce the terms of the Bonding </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">13</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="f-439-2"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Agreement and the Clarke Bonding Guaranty Agreement. The trial court initially granted summary judgment in favor of Orinoco and the Clarkes, dismissing our claims against Orinoco under the Bonding Agreement and against the Clarkes under the Clarke Bonding Guaranty Agreement. We filed an appeal with the trial court requesting a new trial on the summary judgment or modification of the judgment. On November 5, 2019, the trial court signed an order granting our motion for a new trial and vacating the prior summary judgment order. The parties are awaiting direction from the court on a new scheduling order and/or trial setting. The Initial Bonds, which are non-revocable, remain in effect. </span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, Maritech and certain other interest owners have received decommissioning orders from BSEE and could receive additional decommissioning orders in the future. Such decommissioning orders received by Maritech and other interest owners relate to asset retirement obligations for certain properties in the Gulf of America. From time to time, we also receive demand notices from third parties related to certain corporate guarantees or other arrangements covering such decommissioning liabilities. While the ultimate outcome of such matters cannot be predicted at this time, if Maritech or other interest owners default, BSEE or third parties may seek to enforce certain corporate guarantees or third party indemnity agreements against us for a portion of such decommissioning obligations, which may be significant. On February 13, 2025, Arena Energy, LLC filed a complaint in U.S. District Court for the Southern District of Texas seeking indemnification from us and Maritech for decommissioning costs related to a Maritech oil and gas platform in the Gulf of America. We intend to vigorously defend against the claims brought by Arena Energy, LLC but we are presently unable to predict the duration, scope or result of this proceeding. </span></div><div><span><br/></span></div><div style="text-indent:38.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If we become liable in the future for any decommissioning liability associated with any property covered by either an Initial Bond or Replacement Bond while such bonds are outstanding and any payment made to us under such bond is insufficient to satisfy such liability, the Bonding Agreement provides that Orinoco will pay us an amount equal to such deficiency. If Orinoco fails to pay any such amount, such amount must be paid by the Clarkes under the Clarke Bonding Guaranty Agreement. Our financial condition and results of operations may be negatively affected if we become liable for a significant portion of the decommissioning liabilities and Orinoco or the Clarkes are unable to cover any such deficiency.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">With respect to certain properties in the Gulf of America, we have been advised that the cost of the decommissioning work to plug and abandon certain wells is projected to be significantly higher than the approximately $<ix:nonFraction unitRef="usd" contextRef="c-107" decimals="-5" name="us-gaap:LossContingencyEstimateOfPossibleLoss" format="ixt:num-dot-decimal" scale="6" id="f-451">10.7</ix:nonFraction>&#160;million bond supporting the liability, which was put in place by Maritech and other interest owners based on earlier cost estimates. We have also been advised more recently that Maritech&#8217;s prior working interest with respect those plugging and abandonment (&#8220;P&amp;A&#8221;) costs are expected to exceed its share of the bond. In September 2024, P&amp;A operations commenced pursuant to a cost sharing agreement among certain parties for decommissioning certain properties in the Gulf of America. While Maritech is not a party to this cost sharing agreement, a predecessor of Maritech has advised us that it expects to seek reimbursement from us for the portion of decommissioning costs it has contractually agreed to pay pursuant to the terms of the cost sharing agreement. While the ultimate outcome of this matter cannot be predicted, we could potentially be liable for an estimated amount in the range of $<ix:nonFraction unitRef="usd" contextRef="c-108" decimals="-5" name="us-gaap:LossContingencyEstimateOfPossibleLoss" format="ixt:num-dot-decimal" scale="6" id="f-452">5.8</ix:nonFraction>&#160;million to $<ix:nonFraction unitRef="usd" contextRef="c-109" decimals="-5" name="us-gaap:LossContingencyEstimateOfPossibleLoss" format="ixt:num-dot-decimal" scale="6" id="f-453">19.4</ix:nonFraction>&#160;million, depending on the outcome of negotiations and whether other partners or property owners in the chain of title fulfill their respective obligations under their agreements. Additionally, we understand that in connection with the P&amp;A operations being performed, Maritech and the other named obligees have made a demand on the related bond. We have made efforts to protect Maritech&#8217;s proportionate share of the bond proceeds (approximately $<ix:nonFraction unitRef="usd" contextRef="c-110" decimals="-5" name="us-gaap:LossContingencyReceivableProceeds" format="ixt:num-dot-decimal" scale="6" id="f-454">3.9</ix:nonFraction>&#160;million), including demanding that the surety segregate or ensure that Maritech&#8217;s share is applied solely to satisfy its proportionate share of the decommissioning costs. We accrued a liability of $<ix:nonFraction unitRef="usd" contextRef="c-55" decimals="-5" name="tti:DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" format="ixt:num-dot-decimal" scale="6" id="f-455">5.8</ix:nonFraction>&#160;million related to this obligation during the year ended December 31, 2024.</span></div></ix:continuation><div id="i41d7e6e5048a4bd8a433c145f33779da_61"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 7 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:FairValueDisclosuresTextBlock" id="f-456" continuedAt="f-456-1" escape="true">FAIR VALUE MEASUREMENTS</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-456-1" continuedAt="f-456-2"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Financial Instruments</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline">Investments</span></div><div><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our investments in Kodiak and Standard Lithium are recorded in investments on our consolidated balance sheets based on the quoted market stock price (Level 1 fair value measurements). The stock component of consideration received from Standard Lithium is initially recorded as unearned income based on the quoted market price at the time the stock is received, then recognized in income over the contract term. Changes in the value of stock are recorded in other (income) expense, net in our consolidated statements of operations.</span></div></ix:continuation><div style="padding-left:2.25pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">14</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="f-456-2" continuedAt="f-456-3"><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also hold investments in convertible notes, common units, and preferred units issued by two privately-held companies. Our investment in certain preferred units were recorded based on observable market-based inputs for preferred units issued to several investors during August through October 2024 (Level 2 fair value measurement). Our investment in convertible notes, common units, and certain preferred units are recorded in our consolidated financial statements based on internal valuations with assistance from a third-party valuation specialist (Level 3 fair value measurement). The valuations are impacted by key assumptions, including the assumed probability and timing of potential debt or equity offerings. One of the convertible notes includes an option to convert the note into equity interests. The change in the fair value of the embedded option, as well as the preferred units and common units, are included in other (income) expense, net in our consolidated statements of operations. The change in the fair value of the convertible note, excluding the embedded option, is included in other comprehensive income (loss) in our consolidated statements of comprehensive income.</span></div><div style="padding-left:2.25pt"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" id="f-457" escape="true"><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in our investments for the three-month periods ended March&#160;31, 2025 and March&#160;31, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are as follows:</span></div><div style="margin-top:5pt;padding-left:2.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:28.415%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.786%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.786%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.786%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.791%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at beginning of period</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-111" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-458">19,561</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-112" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-459">1,388</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-113" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-460">7,210</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-114" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-461">28,159</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Sale of investments</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-115" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" format="ixt:num-dot-decimal" scale="3" id="f-462">19,011</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-116" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" format="ixt:fixed-zero" scale="3" id="f-463">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-117" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" format="ixt:fixed-zero" scale="3" id="f-464">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-118" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" format="ixt:num-dot-decimal" scale="3" id="f-465">19,011</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Reclassification between Level 2 and Level 3 fair value</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-115" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" format="ixt:fixed-zero" scale="3" id="f-466">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-116" decimals="-3" sign="-" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" format="ixt:num-dot-decimal" scale="3" id="f-467">1,388</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-117" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" format="ixt:num-dot-decimal" scale="3" id="f-468">1,388</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-118" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" format="ixt:fixed-zero" scale="3" id="f-469">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on equity securities</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-119" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-470">466</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-120" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-471">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-121" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-472">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-122" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-473">466</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized loss on embedded option</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-123" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-474">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-124" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-475">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-125" decimals="-3" sign="-" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-476">209</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-126" decimals="-3" sign="-" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-477">209</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on convertible note, excluding embedded option</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-127" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-478">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-128" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-479">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-129" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-480">281</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-130" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-481">281</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at end of period</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-131" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-482">1,016</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-132" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:fixed-zero" scale="3" id="f-483">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-133" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-484">8,670</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-134" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-485">9,686</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="margin-top:5pt;padding-left:2.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"/><td style="width:52.644%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.584%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:13.584%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.534%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:13.586%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-135" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-486">10,154</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-136" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-487">7,200</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-137" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-488">17,354</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on equity securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-138" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:num-dot-decimal" scale="3" id="f-489">2,994</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-139" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-490">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-140" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:num-dot-decimal" scale="3" id="f-491">2,994</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized loss on embedded option</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-141" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-492">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-142" decimals="-3" sign="-" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-493">199</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-143" decimals="-3" sign="-" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-494">199</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on convertible note, excluding embedded option</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-144" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" format="ixt:fixed-zero" scale="3" id="f-495">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-145" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-496">237</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-146" decimals="-3" name="us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" scale="3" id="f-497">237</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at end of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-147" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-498">13,148</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-148" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-499">7,238</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-149" decimals="-3" name="us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" format="ixt:num-dot-decimal" scale="3" id="f-500">20,386</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div></ix:nonNumeric></ix:continuation><div style="padding-left:2.25pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">15</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="f-456-3"><ix:nonNumeric contextRef="c-1" name="us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" id="f-501" escape="true"><div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring fair value measurements by valuation hierarchy as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:46.191%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.737%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.737%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:15.739%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total as of</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-74" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-502">1,016</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-150" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-503">1,016</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-151" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-504">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-76" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-505">8,670</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-152" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-506">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-153" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-507">8,670</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Total investments</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-508">9,686</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr></table></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:28.724%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.712%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.720%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total as of </span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 5.5pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Kodiak</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-73" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-509">18,393</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-154" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-510">18,393</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-155" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-511">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-156" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-512">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-75" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-513">1,168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-157" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-514">1,168</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-158" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-515">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-159" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-516">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-77" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-517">8,598</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-160" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:fixed-zero" scale="3" id="f-518">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-161" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-519">1,388</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-162" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-520">7,210</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Investments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"><ix:nonFraction unitRef="usd" contextRef="c-11" decimals="-3" name="us-gaap:EquitySecuritiesFvNi" format="ixt:num-dot-decimal" scale="3" id="f-521">28,159</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Other</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair values of cash, restricted cash, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and long-term debt approximate their carrying amounts. See Note 5 - &#8220;Long-Term Debt and Other Borrowings&#8221; for further discussion.</span></div></ix:continuation><div id="i41d7e6e5048a4bd8a433c145f33779da_64"></div><div style="margin-top:12pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 8 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:EarningsPerShareTextBlock" id="f-522" continuedAt="f-522-1" escape="true">NET INCOME PER SHARE</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" id="f-523" escape="true"><ix:continuation id="f-522-1"><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the weighted average number of common shares outstanding with the number of shares used in the computations of net income per common and common equivalent share:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:63.028%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.469%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.471%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number of weighted average common shares outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-524">132,350</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-9" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="f-525">130,453</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-4.5pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assumed vesting of equity awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" format="ixt:num-dot-decimal" scale="3" id="f-526">1,407</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-9" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" format="ixt:num-dot-decimal" scale="3" id="f-527">1,670</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Average diluted shares outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-1" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-528">133,757</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="c-9" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="f-529">132,123</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div></ix:continuation></ix:nonNumeric><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">16</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_67"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">NOTE 9 &#8211; <ix:nonNumeric contextRef="c-1" name="us-gaap:SegmentReportingDisclosureTextBlock" id="f-530" continuedAt="f-530-1" escape="true">INDUSTRY SEGMENTS</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><ix:continuation id="f-530-1"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We manage our operations through <ix:nonFraction unitRef="segment" contextRef="c-1" decimals="INF" name="us-gaap:NumberOfOperatingSegments" format="ixt-sec:numwordsen" scale="0" id="f-531">two</ix:nonFraction> segments: Completion Fluids &amp; Products Division and Water &amp; Flowback Services Division.</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="c-1" name="us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock" id="f-532" escape="true"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Summarized financial information concerning the business segments is as follows:</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:56.356%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.695%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:8.700%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-533">93,018</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-534">64,122</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:fixed-zero" scale="3" id="f-535">&#8212;</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-536">157,140</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of product sales and services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-537">54,315</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-538">50,250</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:fixed-zero" scale="3" id="f-539">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-540">104,565</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-541">2,177</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-542">6,880</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" scale="3" id="f-543">94</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-544">9,151</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Impairments and other charges</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" format="ixt:fixed-zero" scale="3" id="f-545">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" scale="3" id="f-546">518</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" format="ixt:fixed-zero" scale="3" id="f-547">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:ImpairmentOfLongLivedAssetsHeldForUse" scale="3" id="f-548">518</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-549">6,683</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-550">5,735</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-551">11,716</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-552">24,134</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:InterestIncomeExpenseNet" scale="3" id="f-553">115</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="us-gaap:InterestIncomeExpenseNet" scale="3" id="f-554">7</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="f-555">4,846</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="f-556">4,724</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="f-557">719</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="f-558">9,634</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="f-559">47</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="f-560">8,962</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-561">30,677</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-562">8,888</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-563">16,703</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-564">5,086</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-163" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" format="ixt:num-dot-decimal" scale="3" id="f-565">13,843</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-164" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" format="ixt:num-dot-decimal" scale="3" id="f-566">4,064</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-165" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" scale="3" id="f-567">49</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-1" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" format="ixt:num-dot-decimal" scale="3" id="f-568">17,956</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-166" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-569">318,848</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-167" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-570">162,365</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-168" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-571">132,872</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-572">614,085</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-573">77,282</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-574">73,690</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:fixed-zero" scale="3" id="f-575">&#8212;</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="f-576">150,972</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of product sales and services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-577">48,464</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-578">62,650</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:fixed-zero" scale="3" id="f-579">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="f-580">111,114</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-581">2,387</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-582">6,288</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" scale="3" id="f-583">81</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="tti:DepreciationDepletionAmortizationAndAccretion" format="ixt:num-dot-decimal" scale="3" id="f-584">8,756</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-585">6,693</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-586">4,503</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-587">11,102</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:GeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="f-588">22,298</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:InterestIncomeExpenseNet" scale="3" id="f-589">269</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" scale="3" id="f-590">76</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="f-591">6,145</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:InterestIncomeExpenseNet" format="ixt:num-dot-decimal" scale="3" id="f-592">5,952</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:fixed-zero" scale="3" id="f-593">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:fixed-zero" scale="3" id="f-594">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" sign="-" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:num-dot-decimal" scale="3" id="f-595">5,535</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" sign="-" name="us-gaap:GainsLossesOnExtinguishmentOfDebt" format="ixt:num-dot-decimal" scale="3" id="f-596">5,535</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" sign="-" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="f-597">215</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" scale="3" id="f-598">548</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="f-599">3,645</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:OtherNonoperatingIncomeExpense" format="ixt:num-dot-decimal" scale="3" id="f-600">3,978</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-601">19,792</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="3" id="f-602">721</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-603">19,218</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="f-604">1,295</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-169" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" format="ixt:num-dot-decimal" scale="3" id="f-605">7,705</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-170" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" format="ixt:num-dot-decimal" scale="3" id="f-606">8,045</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-171" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" scale="3" id="f-607">77</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="-3" name="us-gaap:PaymentsToAcquireProductiveAssets" format="ixt:num-dot-decimal" scale="3" id="f-608">15,827</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-172" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-609">290,788</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-173" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-610">158,475</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-174" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-611">155,932</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="f-612">605,195</ix:nonFraction></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr></table></div></ix:nonNumeric></ix:continuation><div id="i41d7e6e5048a4bd8a433c145f33779da_73"></div><div style="margin-top:12pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">17</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_76"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">The following discussion and analysis of financial condition and results of operations should be read in conjunction with our unaudited consolidated financial statements and accompanying notes included in this Quarterly Report.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">In addition, the following discussion and analysis should also be read in conjunction with our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">Annual Report on Form 10-K</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> for the year ended December&#160;31, 2024 filed with the Securities and Exchange Commission (&#8220;SEC&#8221;) on February&#160;25, 2025 (&#8220;2024 Annual Report&#8221;). This discussion includes forward-looking statements that involve certain risks and uncertainties.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_79"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Business Overview</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are an energy services and solutions company with operations on six continents focused on developing environmentally conscious services and solutions that help make people's lives better. In addition to providing products and services to the oil and gas industry and calcium chloride for diverse applications, TETRA is expanding into the low-carbon energy market with chemistry expertise, key mineral acreage, and global infrastructure, helping to meet the demand for sustainable energy in the twenty-first century. We are also developing and pilot testing technologies to treat and desalinate produced water from oil wells for beneficial reuse, including surface discharge. We are composed of two segments &#8211; Completion Fluids &amp; Products Division and Water &amp; Flowback Services Division.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated revenue for the first three months of 2025 of $157.1&#160;million increased compared to the prior year due to strong results from our Completion Fluids &amp; Products Division, which offset expected weaker United States onshore activity in our Water &amp; Flowback Services Division.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Completion Fluids &amp; Products Division revenues for the first three months of 2025 increased compared to both the last three months of 2024 and the first three months of 2024, led by deepwater Gulf of America as we completed the first of the three scheduled CS Neptune wells and made significant progress on the second well. TETRA CS Neptune fluids projects are historically higher revenue and margin projects. The Completion Fluids &amp; Products division also benefited from an early start to the seasonally strong calcium chloride business in Northern Europe in the first quarter, for which we expect to continue to benefit through the second quarter. We also expect to begin the multi-year deep water completion fluids contract in Brazil during the second quarter.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Water &amp; Flowback Services revenues decreased slightly compared to the last three months of 2024 and decreased 13.0% compared to the first three months of 2024, reflecting weaker onshore activity in the United States, as well as lower service revenues following the sale of early production facilities in Latin America in 2024. Water &amp; Flowback Services gross profit margins were relatively flat despite much lower customer activity levels as our cost control actions and continued focused on automation contributed to stable margins in a weaker environment.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We remain committed to pursuing low-carbon energy initiatives that leverage our completion fluids and aqueous chemistry core competencies, our significant bromine and lithium assets and technologies, and our leading calcium chloride production capabilities. In August 2024, we published a definitive feasibility study and updated our technical resources report with respect to bromine from our Evergreen Brine Unit. We have ongoing negotiations with various bromine providers for bridging supply agreements that, if and when finalized, will give us flexibility on the timing of a plant start-up, allowing us to accumulate additional cash from our existing base business. These initiatives are expected to provide us the bromine supply volumes necessary for the growing deepwater market plus the growing long-duration battery requirements, while deferring investments in Arkansas or scaling up our bromine production at lower levels than previously anticipated. If and when the bridging supply agreement is finalized, we will announce our revised Arkansas investment and timing plans. We continue to advance our development efforts in Arkansas and anticipate this continue throughout the duration of 2025.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are prioritizing our strategic initiatives on projects that can immediately impact our near-term results, focused on TETRA CS Neptune fluids in the Gulf of America, TETRA PureFlow+ electrolyte shipments and our recently announced TETRA Oasis Total Desalination Solution ("TDS"), an end-to-end water treatment and desalination solution for re-use and mineral extraction applications for produced water from oil and gas wells. We are commencing a pilot project that is expected to begin in the first half of 2025 and includes a rangeland grass growth study in a greenhouse using TDS processed water.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">18</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_82"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Results of Operations</span></div><div style="margin-top:12pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following information should be read in conjunction with the Consolidated Financial Statements and the associated Notes contained elsewhere in this report. The analysis herein reflects the optional approach to discuss results of operations on a sequential-quarter basis, which we believe provides information that is most useful in assessing our quarterly results of operations.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Three months ended March 31, 2025 compared with three months ended December 31, 2024.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Consolidated Comparisons</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"/><td style="width:46.777%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.223%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.077%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.613%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.614%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">157,140</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">134,504</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">22,636</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">16.8</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">42,906</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">31,135</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">11,771</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">37.8</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,134&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">23,128&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,006&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4.3&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense as a </span><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;&#160;&#160;percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,232&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(508)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(9.7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,962&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(4,617)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,579)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:24pt;text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">NM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)   </span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Income before taxes and discontinued operations</span></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">5,086</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">7,392</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(2,306)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(31.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income before taxes and discontinued operations as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.5&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision (benefit) for income taxes</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,037&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(94,841)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">95,878&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(101.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income before discontinued operations</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,049&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">102,233&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(98,184)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(96.0)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Discontinued operations:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income from discontinued operations, net of taxes</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">490&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">490&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income</span></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,049&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">102,723&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(98,674)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(96.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss attributable to noncontrolling interests</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income attributable to TETRA stockholders</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4,049</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">102,724</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(98,675)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(96.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr></table></div><div style="margin-top:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Percent change is not meaningful</span></div><div style="margin-top:3pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Consolidated revenues increased between the current and previous quarters primarily due to higher activity for the Completion Fluids &amp; Products division, driven by increased pricing and volume sales in the Northern European industrial chemicals market. See Divisional Comparisons section below for a more detailed discussion of the change in our revenues.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Consolidated gross profit increased primarily due to stronger activity levels from the Completion Fluids &amp; Products Division driven by the first CS Neptune well and an early start to the seasonal calcium chloride business in Northern Europe. See Divisional Comparisons section below for additional discussion.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated interest expense, net decreased compared to the prior quarter primarily due to an increase in the interest expense capitalized for our Arkansas development. Consolidated other (income) expense, net, changed compared to the prior quarter primarily due to a $7.8 million increase in foreign exchange losses, including recognition of $9.5 million cumulative currency translation adjustment loss associated with the dissolution of a former subsidiary in Canada, partially offset by increased foreign exchange gains in Brazil. Consolidated other (income) expense, net also includes a $4.8&#160;million net decrease in unrealized gains on investments.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated provision for income tax was $1.0&#160;million expense during the current quarter, compared to $94.8&#160;million benefit during the prior quarter. The change in our tax provision compared to the prior quarter tax benefit was primarily due to the reversal of the valuation allowance related to our United States deferred tax assets (federal and state) during the prior quarter. Our consolidated effective tax rate for the three months ended March&#160;31, 2025 was 20.4%, which approximates our statutory tax rate in the United States.</span></div><div style="text-align:justify"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Divisional Comparisons</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Completion Fluids &amp; Products Division</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">93,018</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">68,869</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">24,149</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">35.1</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">36,526</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">24,852</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">11,674</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">47.0</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">36.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,683&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,016&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">667&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(115)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">633&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">748&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(118.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(719)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">871&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,590)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(182.5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income before taxes and discontinued operations</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">30,677</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">17,332</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">13,345</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">77.0</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income before taxes and discontinued operations as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33.0&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25.2&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Completion Fluids &amp; Products Division increased driven by completion of the first of the three scheduled CS Neptune wells. We also benefited from an early start to the seasonally strong calcium chloride business in Northern Europe.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross profit for our Completion Fluids &amp; Products Division increased compared to the prior quarter primarily due to the increase in revenues mentioned above. Profit margins improved as CS Neptune fluids generate higher margins than other projects. Our profitability in future periods will continue to be affected by the mix of our products and services, market demand for our products and services, and drilling and completions activity.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Completion Fluids &amp; Products Division general and administrative expense increased $0.7 million, primarily due to a $0.3 million increase in compensation expense including short-term incentive compensation and a $0.3 million increase in professional services fees.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other expense, net increased primarily due to a $1.7 million increase in foreign exchange gain, primarily in Brazil.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Water &amp; Flowback Services Division</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">64,122</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">65,635</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(1,513)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(2.3)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">6,474</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">6,382</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">92</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1.4</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,735&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,583&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,152&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25.1&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest income, net</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(75)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">68&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(90.7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,634&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(275)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,909&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:24pt;text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">NM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)   </span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes and discontinued operations</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(8,888)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2,149</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(11,037)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(513.6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income (loss) before taxes and discontinued operations as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13.9)</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.3&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Percent change is not meaningful</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Water &amp; Flowback Services Division declined slightly compared to the prior quarter, primarily due to lower overall customer activity in the North America onshore business.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">20</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Gross profit for our Water &amp; Flowback Services Division remained comparable to the previous quarter as our cost control actions and continued focused on automation contributed to stable margins in a weaker environment.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Water &amp; Flowback Services Division net loss before taxes and discontinued operations this quarter compared to a gain from the previous quarter is primarily due to recognition of a $9.5 million cumulative currency translation adjustment loss associated with the dissolution of a former subsidiary in Canada and a $1.2&#160;million increase in general and administrative expense due to an increase in compensation expense.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Corporate Overhead</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" rowspan="2" style="border-bottom:1pt solid #000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,716&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">12,529&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(813)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(6.5)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,846&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,674&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">172&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,213)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,260)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:24pt;text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">NM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)   </span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net loss before taxes and discontinued operations</span></div></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(16,703)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(12,089)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4,614</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">38.2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Percent change is not meaningful</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate overhead net loss before taxes and discontinued operations increased compared to the prior quarter is primarily due to a $4.7 million decrease in unrealized gains related to unit price changes of our investment in Kodiak, which we sold in January 2025. Kodiak acquired CSI Compressco LP (&#8220;CSI Compressco&#8221;) in April 2024.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_88"></div><div style="-sec-extract:summary;margin-top:10pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Three months ended March 31, 2025 compared with three months ended March 31, 2024.</span></div><div style="margin-top:10pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Consolidated Comparisons</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">157,140</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">150,972</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">6,168</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4.1</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">42,906</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">31,102</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">11,804</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">38.0</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20.6&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,134&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,298&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,836&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">15.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">14.8&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,952&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,228)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(20.6)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,535)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,962&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,978)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(12,940)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(325.3)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income before taxes</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">5,086</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1,295</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">3,791</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">292.7</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income before taxes as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">0.9&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for income taxes</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,037&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">380&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">657&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">172.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income attributable to TETRA stockholders</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4,049</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">915</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">3,134</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">342.5</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Percent change is not meaningful</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated revenues increased compared to the prior year due to stronger activity from our Completion Fluids &amp; Products Division partially offset by lower revenues from our Water &amp; Flowback Services Division. See Divisional Comparisons section below for a more detailed discussion of the change in our revenues.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated gross profit increased in the current year primarily due to strong margins from our Completion Fluids &amp; Products and stable margins from our Water &amp; Flowback Services Divisions.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">21</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated general and administrative expenses increased compared to the prior year due to higher professional services and other expenses.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Interest expense, net decreased $1.2 million</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">due to an increase in the interest expense capitalized for our Arkansas development as well as lower interest rates on our Term Credit Agreement. </span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated loss on debt extinguishment decreased $5.5 million from non-cash unamortized finance costs expensed in connection with the repayment of our prior Term Credit Agreement in January 2024.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated other expense, net, changed compared to the prior year primarily due to a $9.0 million increase in foreign exchange loss, including recognition of the cumulative currency translation adjustment loss associated with the dissolution of a former subsidiary in Canada, and a $2.5&#160;million decrease in net unrealized gain on investments.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated provision for income taxes was $1.0&#160;million expense during the current year, compared to $0.4&#160;million expense during the prior year. Our consolidated effective tax rate for the current year is 20.4%, compared to 29.3% during the prior year. Our effective tax rate for the current year approximates our statutory tax rate in the United States.</span></div><div style="text-indent:36pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Divisional Comparisons</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Completion Fluids &amp; Products Division</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">93,018</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">77,282</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">15,736</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">20.4</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">36,526</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">26,431</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">10,095</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">38.2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">39.3&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">34.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,683&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,693&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(0.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7.2&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.7&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest income, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(115)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(269)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(154)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(57.2)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(719)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">215&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">934&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:24pt;text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">NM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)   </span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income before taxes</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">30,677</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">19,792</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">10,885</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">55.0</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income before taxes as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">33.0&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">25.6&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Percent change is not meaningful</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Completion Fluids &amp; Products Division increased primarily due to completion of the first of the three scheduled CS Neptune wells. We also benefited from an early start to the seasonally strong calcium chloride business in Northern Europe.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross profit for our Completion Fluids &amp; Products Division increased compared to the prior year due to higher revenues. Profit margins improved as CS Neptune fluids generate higher margins than other projects. Our profitability in future periods will continue to be affected by the timing of and the mix of our products and services, market demand for our products and services, and drilling and completions activity.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net income before taxes for our Completion Fluids &amp; Products Division increased compared to the prior year driven by higher gross profit. Other (income) expense, net improved, primarily from an $0.8&#160;million increase in foreign exchange gains, primarily in Brazil.</span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">22</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Water &amp; Flowback Services Division</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenues</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">64,122</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">73,690</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(9,568)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(13.0)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">6,474</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4,752</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1,722</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">36.2</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;text-indent:-9pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Gross profit as a percentage of revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.4&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,735&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,232&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">27.4&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8.9&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6.1&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(83)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 4pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(109.2)%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,634&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(548)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(10,182)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt;text-align:right"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">NM</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)   </span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(8,888)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">721</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(9,609)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(1,332.7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:18pt;text-indent:-9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net income (loss) before taxes as a percentage of revenue</span></div></td><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13.9)</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1.0&#160;</span></td><td style="background-color:#cceeff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Percent change is not meaningful</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenues for our Water &amp; Flowback Services Division decreased primarily from lower United States drilling and completion activity.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Gross profit for our Water &amp; Flowback Services Division increased slightly from the prior year despite the decrease in revenues primarily due to continuous efforts to increase margins through streamlining operations and automation.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net income (loss) before taxes for our Water &amp; Flowback Services Division decreased primarily due to recognition of the $9.5 million cumulative currency translation adjustment loss associated with the dissolution of a former subsidiary in Canada, as well as a $1.2 million increase in general and administrative expense due to higher compensation expense.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Corporate Overhead</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:46.707%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.204%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.595%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.600%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Period to Period Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$ Change</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">% Change</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">81&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">16.0&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,716&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,102&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">614&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5.5&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,846&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,145&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,299)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(21.1)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(5,535)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">100.0&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,645)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,692)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(101.3)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net loss before taxes</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(16,703)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(19,218)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(2,515)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(13.1)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">%</span></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate overhead net loss before taxes decreased primarily due to a $5.5 million loss associated with the early extinguishment of our prior term credit agreement in January 2024 and a $3.0&#160;million decrease in unrealized gains related to share price changes of our investment in Kodiak and a $1.3 million decrease in interest expense, net due to an increase in the interest expense capitalized for our Arkansas development as well as lower interest rates on our Term Credit Agreement, partially offset by a $0.6&#160;million increase in general and administrative expenses primarily from an increase in professional services.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_91"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Non-GAAP Financial Measures</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We use U.S. GAAP financial measures such as revenues, gross profit, income (loss) before taxes and discontinued operations, and net cash provided by operating activities, as well as certain non-GAAP financial measures, including Adjusted EBITDA, as performance measures for our business.</span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">23</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%;text-decoration:underline">Adjusted EBITDA</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We define Adjusted EBITDA as net income (loss) before taxes and discontinued operations, excluding impairments, certain special, non-recurring or other charges (or credits), including loss on debt extinguishment, interest, depreciation and amortization and certain non-cash items such as equity-based compensation expense and foreign currency translation adjustments not associated with current operations. The most directly comparable GAAP financial measure is net income (loss) before taxes and discontinued operations. Adjustments to long-term incentives represent adjustments to valuation of long-term cash incentive compensation awards that are related to prior years. These costs are excluded from Adjusted EBITDA because they did not relate to the periods presented and are considered to be outside of normal operations. Long-term incentives are earned over a three-year period and the costs are recorded over the three-year period they are earned. The amounts accrued or incurred are based on a cumulative of the three-year period. Equity-based compensation expense represents compensation that has been or will be paid in equity and is excluded from Adjusted EBITDA because it is a non-cash item.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adjusted EBITDA is used by management as a supplemental financial measure to assess financial performance, without regard to charges or credits that are considered by management to be outside of its normal operations and without regard to financing methods, capital structure or historical cost basis, and to assess the Company&#8217;s ability to incur and service debt and fund capital expenditures.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">24</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">reconcile net income (loss) before taxes and discontinued operations to Adjusted EBITDA for the periods indicated:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:44.075%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.280%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:9.285%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Corporate SG&amp;A</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Corporate Other</span></div></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">93,018</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">64,122</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">157,140</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">30,677</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(8,888)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(11,716)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(4,987)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">5,086</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of product sales and services adjustment</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">477&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">477&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Impairments and other charges</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Former CEO stock appreciation right credit</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(151)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(151)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Transactions, restructuring and other expenses</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">302&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">784&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,086&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Non-cash cumulative foreign currency translation adjustment loss from dissolution of Canadian subsidiary</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,516&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,516&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(115)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,177&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,880&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,151&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Equity-based compensation expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,860&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,860&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Adjusted EBITDA</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">33,216</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">8,321</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(9,223)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(47)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">32,267</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adjusted EBITDA as % of revenue</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">35.7&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13.0&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">20.5&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:8pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Corporate SG&amp;A</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Corporate Other</span></div></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">68,869</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">65,635</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">134,504</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Net income (loss) before taxes and discontinued operations</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">17,331</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2,149</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(12,529)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">441</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">7,392</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Cost of product sales and services adjustment</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,776)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(1,776)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Former CEO stock appreciation right expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">103&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">103&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Transaction, restructuring and other expenses</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">56&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">146&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">650&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">852&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">633&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(75)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">4,674&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,232&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,569&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,686&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">99&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9,354&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Equity-based compensation expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,668&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,668&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Adjusted EBITDA</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">18,813</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">8,906</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(10,108)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">5,214</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">22,825</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adjusted EBITDA as % of revenue</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">27.3&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">13.6&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">17.0&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Corporate SG&amp;A</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Corporate Other</span></div></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="27" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:7pt;font-weight:400;line-height:100%">(in thousands, except percentages)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">77,282</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">73,690</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">150,972</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">19,792</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">721</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(11,101)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(8,117)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:middle"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">1,295</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:middle"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Former CEO stock appreciation right credit</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(186)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(186)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Transaction, restructuring and other (income) expenses</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(159)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">24&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(135)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(269)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,145&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">5,952&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2,387&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">6,288&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">81&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">8,756&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Equity-based compensation expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,623&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">1,623&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Adjusted EBITDA</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">21,751</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">7,085</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(9,640)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">3,644</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:700;line-height:100%">22,840</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Adjusted EBITDA as % of revenue</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">28.1&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">9.6&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">15.1&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Adjusted EBITDA is a financial measure that is not in accordance with U.S. GAAP and should not be considered an alternative to net income, operating income, cash provided by operating activities,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">or any other measure of financial performance presented in accordance with U.S. GAAP. This measure may not be comparable </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">25</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">to similarly titled financial metrics of other companies, as other companies may not calculate Adjusted EBITDA in the same manner as</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">we do. Management compensates for the limitations of Adjusted EBITDA as an analytical tool by reviewing the comparable U.S. GAAP measures, understanding the differences between the measures,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">and incorporating this knowledge into management&#8217;s decision-making processes.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_94"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Liquidity and Capital Resources</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We believe that our capital structure allows us to meet our financial obligations on both a short-term and long-term basis. Our liquidity at the end of the first quarter was $208.1 million. Liquidity is defined as unrestricted cash plus availability of $75 million under the delayed draw from our Term Credit Agreement and availability under our credit agreements. Information about the terms and covenants of our debt agreements can be found in Note 5 - Long Term Debt and Other Borrowings.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our consolidated sources and uses of cash are as follows:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:63.081%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.446%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Operating activities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,935&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(13,816)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investing activities</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,345&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(15,748)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Financing activities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(2,089)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,348&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Operating Activities</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated cash flows provided by operating activities increased compared to the first three months of 2024 primarily due to an increase in gross profit and working capital changes.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Investing Activities</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total cash capital expenditures during the first three months of 2025 were $18.0 million, which reflects increased expenditures for advancement of our Arkansas brine resource development and additions to accommodate industry-wide activity. Our Completion Fluids &amp; Products Division spent $13.8 million on capital expenditures, including $11.2&#160;million for our Arkansas brine resource development. Our Water &amp; Flowback Services Division spent $4.1 million on capital expenditures to maintain, automate and upgrade its water management and flowback equipment fleet. </span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Investing activities during the first three months of 2025 also included $19.0 million of proceeds from the sale of our Kodiak shares, net of broker commissions and fees.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have rights to the brine underlying our approximately 40,000 gross acres of brine leases in the Smackover Formation in Southwest Arkansas, including rights to the bromine and lithium contained in the brine. Additional information on these resources is described in Part I, &#8220;Item 2. Properties&#8221; in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">2024 Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The extraction of lithium and bromine from these brine leases will likely require a significant amount of time and capital, which are subject to further analysis and consideration. In August 2024, we published a definitive feasibility study and updated our technical resources report with respect to bromine from our Evergreen Brine Unit. We have ongoing negotiations with various bromine providers for bridging supply agreements that, if and when finalized, will give us flexibility on the timing of a plant start-up, allowing us to accumulate additional cash from our existing base business operations. These initiatives are expected to provide us the bromine supply volumes necessary for the growing deepwater market plus the growing long-duration battery storage requirements, while deferring investments in Arkansas or scaling up our bromine production at lower levels than previously anticipated. If and when the bridging supply agreement is finalized, we will announce our revised Arkansas investment and timing plans.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Historically, a significant majority of our planned capital expenditures have been related to identified opportunities to grow and expand our existing businesses. We are also focused on enhancing shareholder value by capitalizing on our key mineral assets, brine mineral extraction expertise, and deep chemistry competency to expand our offerings into the low carbon energy markets. However, we continue to review all capital expenditure plans carefully in an effort to conserve cash. If the forecasted demand for our products and services increases or </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">26</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">decreases, or we proceed with development of brine resources in Arkansas, the amount of planned expenditures on growth and expansion may be adjusted.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Financing Activities</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our financing activities for the first three months of 2025 include $0.9&#160;million of capital lease payments associated with equipment leased primarily for the early production facilities in Argentina and equipment leases in the United States. We may supplement our existing cash balances and cash flow from operating activities with short-term borrowings, long-term borrowings, issuances of equity and debt securities, and other sources of capital. We are aggressively managing our working capital and capital expenditure needs in order to maximize our liquidity in the current environment.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For additional information on our credit agreements, see Note 5 - &#8220;Long-Term Debt and Other Borrowings&#8221; in the Notes to Consolidated Financial Statements.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Other Sources and Uses of Cash</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition to our credit facilities, we fund our short-term liquidity requirements from cash generated by our operations and from short-term vendor financing. In addition, as of March&#160;31, 2025, the market value of our investment in Standard Lithium was $1.0&#160;million, with no holding restrictions on our ability to monetize our interests. </span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we are party to agreements in which Standard Lithium has the right to explore for, and an option to acquire the right to produce and extract lithium in our Arkansas leases as well as additional potential resources, in the Mojave region of California. Standard Lithium exercised its option with respect to our Arkansas leases on October 6, 2023. TETRA is entitled to a 2.5% royalty on gross revenues from the lithium that Standard Lithium produces from the TETRA option acreage. In addition, TETRA maintains the rights to the bromine and other minerals extracted from the brine produced by Standard Lithium in their approved unit.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In May 2022, we filed a universal shelf Registration Statement on Form S-3 with the SEC, which was declared effective by the SEC. Pursuant to this registration statement, we have the ability to sell debt or equity securities in one or more public offerings up to an aggregate public offering price of $400 million. This shelf registration statement currently provides us additional flexibility with regards to potential financing that we may undertake when market conditions permit or our financial condition may require.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Should additional capital be required, the ability to raise such capital through the issuance of additional debt or equity securities may currently be limited. Instability or volatility in the capital markets at the times we need to access capital may affect the cost of capital and the ability to raise capital for an indeterminable length of time. If it is necessary to issue additional equity to fund our capital needs, additional dilution of our common stockholders will occur. We periodically evaluate engaging in strategic transactions and may consider divesting non-core assets where our evaluation suggests such transactions are in the best interest of our business. In challenging economic environments, we may experience increased delays and failures by customers to pay our invoices. If our customers delay paying or fail to pay us a significant amount of our outstanding receivables, it could have an adverse effect on our liquidity.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">An increase in unpaid aged receivables would also negatively affect our borrowing availability under the ABL Credit Agreement.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March&#160;31, 2025, we had no &#8220;off balance sheet arrangements&#8221; that may have a current or future material effect on our consolidated financial condition or results of operations.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_97"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Critical Accounting Policies and Estimates</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;There have been no material changes or developments in the evaluation of the accounting estimates and</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">the underlying assumptions or methodologies pertaining to our Critical Accounting Policies and Estimates disclosed</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. In preparing our consolidated financial statements, we make assumptions, estimates, and judgments that affect the amounts reported. These judgments and estimates may change as new events occur, as new information is acquired, and as changes in our operating environments are encountered. Actual results are likely to differ from our current estimates, and those differences may be material.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">27</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_100"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Commitments and Contingencies</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Litigation</span></div><div><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">For discussion</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:107%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">of</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:107%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">our</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:107%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">legal</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:107%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">proceedings, please see our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%"> and Note 6 - &#8220;Commitments and Contingencies&#8221; in the Notes to Consolidated Financial Statements</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:107%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">included in this Quarterly Report.</span></div><div style="padding-left:2.25pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Long-Term Debt</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For information on our credit agreements, see Note 5 - &#8220;Long-Term Debt and Other Borrowings&#8221; in the Notes to Consolidated Financial Statements.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Leases</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have operating leases for some of our transportation equipment, office space, warehouse space, operating locations and machinery and equipment, as well as a sales-type lease and subleases for certain facilities. We have finance leases for certain facility storage tanks and equipment rentals. Information about the terms of our lease agreements can be found in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Product and Asset Purchase Obligations</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For information on product and asset purchase obligations, see Note 6 - &#8220;Commitments and Contingencies&#8221; in the Notes to Consolidated Financial Statements.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_103"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Cautionary Statement for Purposes of Forward-Looking Statements</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">This Quarterly Report on Form 10-Q contains &#8220;forward-looking statements&#8221; 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. Forward-looking statements in this Quarterly Report are identifiable by the use of the following words, the negative of such words, and other similar words: &#8220;anticipates&#8221;, &#8220;assumes&#8221;, &#8220;believes&#8221;, &#8220;budgets&#8221;, &#8220;could&#8221;, &#8220;estimates&#8221;, &#8220;expects&#8221;, &#8220;forecasts&#8221;, &#8220;goal&#8221;, &#8220;intends&#8221;, &#8220;may&#8221;, &#8220;might&#8221;, &#8220;plans&#8221;, &#8220;predicts&#8221;, &#8220;projects&#8221;, &#8220;schedules&#8221;, &#8220;seeks&#8221;, &#8220;should&#8221;, &#8220;targets&#8221;, &#8220;will&#8221;, and &#8220;would&#8221;.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">These forward-looking statements reflect our current views with respect to future events and financial performance and are based on assumptions that we believe to be reasonable, but such forward-looking statements are subject to numerous risks and uncertainties, including, but not limited to: economic and operating conditions that are outside of our control, including the trading price of our common stock, and the supply, demand, and prices of oil and natural gas; the availability of adequate sources of capital to us; the effect of inflation on the cost of goods and services; the activity levels of our customers; our operational performance; actions taken by our customers, suppliers, competitors and third-party operators; the availability of raw materials and labor at reasonable prices; risks related to acquisitions and our growth strategy; restrictions under our debt agreements and the consequences of any failure to comply with debt covenants; the effect and results of litigation, commercial disputes, regulatory matters, settlements, audits, assessments, and contingencies; potential regulatory initiatives to restrict hydraulic fracturing activities on federal lands as well as other actions to more stringently regulate certain aspects of oil and gas development such as air emissions and water discharges; risks related to our foreign operations; risks related to our non-controlling equity investments; information and operational technology risks, including the risk of cyberattack; our health, safety and environmental performance; the effects of consolidation on our customers and competitors; global or national health concerns, including the outbreak of pandemics or epidemics such as the coronavirus (COVID-19); acts of terrorism, war or political or civil unrest in the United States or elsewhere, including the current conflict between Russia and Ukraine, the conflict in the Israel-Gaza region and continued hostilities in the Middle East, maritime piracy attacks; and statements regarding our beliefs, expectations, plans, goals, future events and performance and other statements that are not purely historical. </span></div><div style="text-indent:36pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">28</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">These statements include statements concerning the mineral resource and reserve estimates of lithium and bromine, the potential extraction of lithium, bromine and other minerals from our Evergreen Unit and other leased acreage, the ability to obtain local governmental and regulatory approvals, the development of the assets including construction of lithium and/or bromine extraction plants, the economic viability thereof, the demand for such resources, and the timing and cost of such activities, and the expected revenues including any royalties, profits and returns from such activities; the timing and success of our bromine production wells and the construction of our bromine processing facility and related engineering activities; the accuracy of our resources report, feasibility study and economic assessment regarding our lithium and bromine acreage; and the ability to obtain a resources report that moves the remaining portion of our bromine and lithium inferred resources to a higher resource or reserve category. With respect to our disclosures of measured, indicated and inferred mineral resources, including bromine and lithium carbonate equivalent concentrations, it is unclear whether they will ever be economically developed. Investors are cautioned that mineral resources do not have demonstrated economic value and further exploration may not result in the estimation of a mineral reserve. Further there are a number of uncertainties related to processing lithium, which is an inherently difficult process, including, for example, the development of the technology to do so successfully and economically. Therefore, investors are cautioned not to assume that all or any part of our resources can be economically or legally commercialized. In particular, investors are cautioned not to assume that all or any part of an inferred mineral resource exists, that it can be economically or legally commercialized, or that it will ever be upgraded to a higher category. With respect to the Company&#8217;s disclosures of the MOU with Saltwerx,</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:112%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">it is uncertain about the ability of the parties to successfully negotiate one or more definitive agreements, the future relationship between the parties, and the ability to successfully and economically produce lithium and bromine from the Evergreen Unit.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Management believes that these forward-looking statements are reasonable as and when made. However, investors are cautioned not to place undue reliance on any such forward-looking statements. Such statements speak only as of the date on which they are made, and the Company undertakes no obligation to publicly update or revise any forward-looking statements, whether as a result of new information, future events or otherwise, except as required by law. In addition, forward-looking statements are subject to certain risks and uncertainties that could cause actual results to differ materially from our historical experience and our present expectations, forecasts or projections. Factors which may cause actual results to differ materially from current expectations include, but are not limited to: changes in general economic conditions; opportunity risks, such as mineral extraction, demand therefor, or realizing industrial and other benefits expected from bromine processing; our ability to develop a bromine processing facility and risks inherent in the construction such facility; equipment supply, equipment defects and/or our ability to timely obtain equipment components; competition from existing or new competitors; risks associated with changes in laws and regulations, or the imposition of economic or trade sanctions affecting international commercial transactions, including legislative, regulatory and policy changes, such as unexpected changes in tariffs, trade barriers, price and exchange controls; and the other factors described in Part II, &#8220;Item 1A. Risk Factors&#8221; and elsewhere in this report and in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">, and those described from time to time in our future reports filed with the SEC.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_106"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 3. Quantitative and Qualitative Disclosures about Market Risk.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Interest Rate Risk</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The interest on our borrowings is subject to market risk exposure related to changes in applicable interest rates. Borrowings under the Term Credit Agreement bear interest at a rate per annum of SOFR plus 5.75%. The Company is required to pay a commitment fee on the unutilized commitments with respect to the delayed-draw term loan at the rate of 1.5% per annum. Borrowings under our ABL Credit Agreement, if any, bear interest at an agreed-upon percentage rate spread above SOFR. Borrowings under our Swedish Credit Facility, if any, bear interest at fixed rates of 2.95%. We are not a party to an interest rate swap contract or other derivative instrument designed to hedge our exposure to interest rate fluctuation risk. As of March&#160;31, 2025, we had no borrowings outstanding under our ABL Credit Agreement or Swedish Credit Facility. The following table sets forth as of March&#160;31, 2025, the principal amount due under our long-term debt obligations and the respective interest rate.</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:44.075%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.443%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.530%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:16.449%"/><td style="width:0.1%"/></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Interest</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March&#160;31, 2025</span></div></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Scheduled Maturity</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Rate</span></td><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term Credit Agreement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">January 1, 2030</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10.17%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">190,000&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">TETRA total debt</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">190,000&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">29</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Exchange Rate Risk</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have currency exchange rate risk exposure related to revenues, expenses, operating receivables, and payables denominated in foreign currencies. We may enter into short-term foreign-currency forward derivative contracts as part of a program designed to mitigate the currency exchange rate risk exposure on selected transactions of certain foreign subsidiaries. Although contracts pursuant to this program will serve as an economic hedge of the cash flow of our currency exchange risk exposure, they are not expected to be formally designated as hedge contracts or qualify for hedge accounting treatment. Accordingly, any change in the fair value of these derivative instruments during a period will be included in the determination of earnings for that period. As of March&#160;31, 2025, we did not have any foreign currency exchange contracts outstanding.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_109"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 4. Controls and Procedures.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the supervision and with the participation of our management, including our Chief Executive Officer and Chief Financial Officer, we conducted an evaluation of our disclosure controls and procedures, as such term is defined under Rule 13a-15(e) promulgated under the Securities Exchange Act of 1934, as amended. Based on this evaluation, the Chief Executive Officer and Chief Financial Officer concluded that our disclosure controls and procedures were effective as of March&#160;31, 2025, the end of the period covered by this quarterly report.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were no changes in our internal controls over financial reporting that occurred during the quarter ended March&#160;31, 2025, that have materially affected, or are reasonably likely to materially affect, our internal controls over financial reporting.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">30</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_112"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">PART II</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">OTHER INFORMATION</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_115"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1. Legal Proceedings.</span></div><div style="text-align:justify"><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">For information regarding litigation, see &#8220;Item 3. Legal Proceedings&#8221; in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%"> and </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Note 6 - &#8220;Commitments and Contingencies&#8221; in the Notes to Consolidated Financial Statements</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:12pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">included in this Quarterly Report.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_118"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 1A. Risk Factors.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of the date of this filing, TETRA and its operations continue to be subject to the risk factors previously disclosed in the &#8220;Risk Factors&#8221; sections contained in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">202</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm">4</a><a style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline" href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_121"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2. Unregistered Sales of Equity Securities and Use of Proceeds.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_127"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 3. Defaults Upon Senior Securities.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_130"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 4.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Mine Safety Disclosures.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div id="i41d7e6e5048a4bd8a433c145f33779da_133"></div><div style="margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 5. Other Information.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Rule 10b5-1 Trading Arrangements</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three months ended March&#160;31, 2025, no director or officer of TETRA <ix:nonNumeric contextRef="c-1" name="ecd:NonRule10b51ArrAdoptedFlag" format="ixt:fixed-false" id="f-613"><ix:nonNumeric contextRef="c-1" name="ecd:Rule10b51ArrAdoptedFlag" format="ixt:fixed-false" id="f-614">adopted</ix:nonNumeric></ix:nonNumeric> or <ix:nonNumeric contextRef="c-1" name="ecd:Rule10b51ArrTrmntdFlag" format="ixt:fixed-false" id="f-615"><ix:nonNumeric contextRef="c-1" name="ecd:NonRule10b51ArrTrmntdFlag" format="ixt:fixed-false" id="f-616">terminated</ix:nonNumeric></ix:nonNumeric> a &#8220;Rule 10b5-1 trading arrangement&#8221; or &#8220;non-Rule 10b5-1 trading arrangement,&#8221; as each term is defined in Item 408(a) of Regulation S-K.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">31</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_136"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="-sec-extract:summary;margin-top:12pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 6. Exhibits.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">&#160;</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibits:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"/><td style="width:11.363%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:86.437%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.1</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/844965/000156459023002827/tti-ex31_6.htm">Certificate of Designation of Series A Junior Participating Preferred Stock (incorporated by reference to Exhibit 3.1 to the Company&#8217;s Form 8-K filed on March 1, 2023 (SEC File No. 001-13455)</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/844965/000156459023002827/tti-ex31_6.htm">)</a><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/844965/000156459023002827/tti-ex31_6.htm">.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.2</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/844965/000095017023024254/tti-ex3_1.htm">Amended and Restated Certificate of Incorporation of TETRA Technologies, Inc. (incorporated by reference to Exhibit 3.1 to the Company&#8217;s Form 8-K filed on May 25, 2023 (SEC File No. 001-13455)).</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3.3</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="https://www.sec.gov/Archives/edgar/data/844965/000095017023024254/tti-ex3_2.htm">Second Amended and Restated Bylaws of TETRA Technologies, Inc. (incorporated by reference to Exhibit 3.2 to the Company&#8217;s Form 8-K filed on May 25, 2023 (SEC File No. 001-13455)).</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31.1*</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="a20250331ex311.htm">Certification Pursuant to Rule 13a-14(a) or 15d-14(a) of the Exchange Act, As Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31.2*</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="a20250331ex312.htm">Certification Pursuant to Rule 13a-14(a) or 15d-14(a) of the Exchange Act, As Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32.1**</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="a20250331ex321.htm">Certification Furnished Pursuant to 18 U.S.C. Section 1350, As Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">32.2**</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%;text-decoration:underline" href="a20250331ex322.htm">Certification Furnished Pursuant to 18 U.S.C. Section 1350, As Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101.SCH++</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Schema Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101.CAL++</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Calculation Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101.DEF++</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Definition Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101.LAB++</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Label Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101.PRE++</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">XBRL Taxonomy Extension Presentation Linkbase Document.</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104*</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cover Page Interactive Data File - the cover page interactive data file does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL documents</span></td></tr></table></div><div style="padding-left:31.5pt;text-indent:-31.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">*&#160;&#160;&#160;&#160;Filed with this report.</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-indent:-31.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">**&#160;&#160;&#160;&#160;Furnished with this report.</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-indent:-31.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%">++&#160;&#160;&#160;&#160;Attached as Exhibit 101 to this report are the following documents formatted in XBRL (Extensible Business Reporting Language): (i) Consolidated Statements of Operations for the three-month periods ended March&#160;31, 2025 and 2024; (ii) Consolidated Statements of Comprehensive Income for the three-month periods ended March&#160;31, 2025 and 2024; (iii) Consolidated Balance Sheets as of March&#160;31, 2025 and December&#160;31, 2024; (iv) Consolidated Statements of Equity for the three-month periods ended March&#160;31, 2025 and 2024; (v) Consolidated Statements of Cash Flows for the three-month periods ended March&#160;31, 2025 and 2024; and (vi) Notes to Consolidated Financial Statements for the three months ended March&#160;31, 2025.</span></div><div style="margin-top:3pt;padding-left:31.5pt;text-indent:-31.5pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">32</span></div></div></div><div id="i41d7e6e5048a4bd8a433c145f33779da_139"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">SIGNATURES</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized.</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.637%"><tr><td style="width:1.0%"/><td style="width:5.556%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:27.493%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.128%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:54.423%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><br/></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">TETRA Technologies, Inc.<br/>&#160;</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 29, 2025</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/Brady M. Murphy</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Brady M. Murphy</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Principal Executive Officer</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date: </span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 29, 2025</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/Elijio V. Serrano</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Elijio V. Serrano</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Vice President and Chief Financial Officer</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Principal Financial Officer and Principal Accounting Officer</span></div></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">33</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>a20250331ex311.htm
<DESCRIPTION>EX-31.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2025 Workiva -->
<title>Document</title></head><body><div id="i27ee3a52d2c34c878f05abb3036e47dd_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.1</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Certification Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Rule 13a-14(a) or 15d-14(a) of the Exchange Act</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">As Adopted Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Section 302 of the Sarbanes-Oxley Act of 2002</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Brady M. Murphy, certify that&#58;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">I have reviewed this report on Form 10-Q for the fiscal</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">quarter ended March&#160;31, 2025, of TETRA Technologies, Inc.&#59;</font></div><div style="padding-left:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report&#59;</font></div><div style="padding-left:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">  </font></div><div style="padding-left:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 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&#58;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">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&#59;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">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&#59;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#59;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent function)&#58;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal controls over financial reporting.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:5.938%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.380%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.382%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 29, 2025</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47;Brady M. Murphy</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Brady M. Murphy</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Chief Executive Officer</font></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>a20250331ex312.htm
<DESCRIPTION>EX-31.2
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2025 Workiva -->
<title>Document</title></head><body><div id="i3b5e476c35b64e639fbbba021cdca28f_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.2</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Certification Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Rule 13a-14(a) or 15d-14(a) of the Exchange Act</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">As Adopted Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:11pt;font-weight:700;line-height:120%">Section 302 of the Sarbanes-Oxley Act of 2002</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Elijio V. Serrano, certify that&#58;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">I have reviewed this report on Form 10-Q for the fiscal</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">quarter ended March&#160;31, 2025, of TETRA Technologies, Inc.&#59;</font></div><div style="padding-left:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report&#59;</font></div><div style="padding-left:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">  </font></div><div style="padding-left:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">The registrant&#8217;s other certifying officer and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 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&#58;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">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&#59;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">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&#59;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">c)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#59;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and</font></div><div style="padding-left:36pt"><font><br></font></div><div style="padding-left:36pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5.</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.67pt">The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent function)&#58;</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">a)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">all significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant&#8217;s ability to record, process, summarize and report financial information&#59; and</font></div><div style="margin-top:3pt;padding-left:54pt;text-indent:-18pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">b)</font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:9.11pt">any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal controls over financial reporting.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:5.938%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.380%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:45.382%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 29, 2025</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47;Elijio V. Serrano</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Elijio V. Serrano</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Vice President and Chief Financial Officer</font></td></tr></table></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>a20250331ex321.htm
<DESCRIPTION>EX-32.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2025 Workiva -->
<title>Document</title></head><body><div id="i9f4de57dafa64b2f8462d28edcaac079_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.1</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Certification Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">18 U.S.C. Section 1350</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">As Adopted Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Section 906 of the Sarbanes-Oxley Act of 2002</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</font></div><div style="text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the Quarterly Report of TETRA Technologies, Inc. (the &#8220;Company&#8221;) on Form 10-Q for the period ending March&#160;31, 2025</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Brady M. Murphy, President and Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that&#58;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934&#59; and</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2) The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.514%"><tr><td style="width:1.0%"></td><td style="width:6.846%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:38.929%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:50.925%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dated&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 29, 2025</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47;Brady M. Murphy</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Brady M. Murphy</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">President and Chief Executive Officer</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TETRA Technologies, Inc.</font></td></tr></table></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:120%">A signed original of this written statement required by Section 906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:120%">Commission or its staff upon request.</font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>5
<FILENAME>a20250331ex322.htm
<DESCRIPTION>EX-32.2
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2025 Workiva -->
<title>Document</title></head><body><div id="i25266a12c38e43be8de06f9848ad7132_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.2</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Certification Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">18 U.S.C. Section 1350</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">As Adopted Pursuant to</font></div><div style="text-align:center"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Section 906 of the Sarbanes-Oxley Act of 2002</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:120%">&#160;</font></div><div style="text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the Quarterly Report of TETRA Technologies, Inc. (the &#8220;Company&#8221;) on Form 10-Q for the period</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ending March&#160;31, 2025 as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Elijio V. Serrano, Senior Vice President and Chief Financial Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that&#58;</font></div><div style="text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(1) The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934&#59; and</font></div><div style="text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="text-indent:36pt"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(2) The information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.514%"><tr><td style="width:1.0%"></td><td style="width:6.846%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:38.929%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:50.925%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dated&#58;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">April 29, 2025</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47;Elijio V. Serrano</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Elijio V. Serrano</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Senior Vice President and Chief Financial Officer</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">TETRA Technologies, Inc.</font></td></tr></table></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">&#160;</font></div><div><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:120%">A signed</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </font><font style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-style:italic;font-weight:400;line-height:120%">original of this written statement required by Section 906 has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.</font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>6
<FILENAME>tti-20250331.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:31d188f3-e502-4f84-8e46-ddb4fc1f350a,g:37a5f24c-bfcc-4cbd-95ae-bb27d63efc4d-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:tti="http://www.tetratec.com/20250331" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2022-03-31" xmlns:dtr-types1="http://www.xbrl.org/dtr/type/2020-01-21" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.tetratec.com/20250331">
  <xs:import namespace="http://fasb.org/srt/2023" schemaLocation="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2023" schemaLocation="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2022-03-31" schemaLocation="https://www.xbrl.org/dtr/type/2022-03-31/types.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/country/2023" schemaLocation="https://xbrl.sec.gov/country/2023/country-2023.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2023" schemaLocation="https://xbrl.sec.gov/dei/2023/dei-2023.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/ecd/2023" schemaLocation="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tti-20250331_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tti-20250331_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tti-20250331_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="tti-20250331_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.tetratec.com/role/CoverPage">
        <link:definition>0000001 - Document - Cover Page</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofOperations" roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofOperations">
        <link:definition>0000002 - Statement - Consolidated Statements of Operations</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofComprehensiveIncomeLoss" roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss">
        <link:definition>0000003 - Statement - Consolidated Statements of Comprehensive Income (Loss)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofComprehensiveIncomeLossParenthetical" roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLossParenthetical">
        <link:definition>0000004 - Statement - Consolidated Statements of Comprehensive Income (Loss) (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 id="ConsolidatedBalanceSheets" roleURI="http://www.tetratec.com/role/ConsolidatedBalanceSheets">
        <link:definition>0000005 - Statement - Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedBalanceSheetsParenthetical" roleURI="http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical">
        <link:definition>0000006 - Statement - Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementofEquityStatement" roleURI="http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement">
        <link:definition>0000007 - Statement - Consolidated Statement of Equity Statement</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementsofCashFlows" roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows">
        <link:definition>0000008 - Statement - Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ConsolidatedStatementofEquityParenthetical" roleURI="http://www.tetratec.com/role/ConsolidatedStatementofEquityParenthetical">
        <link:definition>0000009 - Statement - Consolidated Statement of Equity (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 id="OrganizationBasisofPresentationandSignificantAccountingPolicies" roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies">
        <link:definition>0000010 - Disclosure - Organization, Basis of Presentation, and 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 id="Revenue" roleURI="http://www.tetratec.com/role/Revenue">
        <link:definition>0000011 - Disclosure - Revenue</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Inventories" roleURI="http://www.tetratec.com/role/Inventories">
        <link:definition>0000012 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Investments" roleURI="http://www.tetratec.com/role/Investments">
        <link:definition>0000013 - Disclosure - Investments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LongTermDebtandOtherBorrowings" roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowings">
        <link:definition>0000014 - Disclosure - Long-Term Debt and Other Borrowings</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingencies" roleURI="http://www.tetratec.com/role/CommitmentsandContingencies">
        <link:definition>0000015 - 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 id="FairValueMeasurements" roleURI="http://www.tetratec.com/role/FairValueMeasurements">
        <link:definition>0000016 - Disclosure - 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 id="NetIncomeperShare" roleURI="http://www.tetratec.com/role/NetIncomeperShare">
        <link:definition>0000017 - Disclosure - Net Income per Share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IndustrySegments" roleURI="http://www.tetratec.com/role/IndustrySegments">
        <link:definition>0000018 - Disclosure - Industry Segments</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies" roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies">
        <link:definition>9954471 - Disclosure - Organization, Basis of Presentation, and 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 id="OrganizationBasisofPresentationandSignificantAccountingPoliciesTables" roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesTables">
        <link:definition>9954472 - Disclosure - Organization, Basis of Presentation, and 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 id="RevenueTables" roleURI="http://www.tetratec.com/role/RevenueTables">
        <link:definition>9954473 - Disclosure - Revenue (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 id="InventoriesTables" roleURI="http://www.tetratec.com/role/InventoriesTables">
        <link:definition>9954474 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InvestmentsTables" roleURI="http://www.tetratec.com/role/InvestmentsTables">
        <link:definition>9954475 - Disclosure - Investments (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LongTermDebtandOtherBorrowingsTable" roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsTable">
        <link:definition>9954476 - Disclosure - Long-Term Debt and Other Borrowings (Table)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsTables" roleURI="http://www.tetratec.com/role/FairValueMeasurementsTables">
        <link:definition>9954477 - Disclosure - 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 id="NetIncomeperShareTables" roleURI="http://www.tetratec.com/role/NetIncomeperShareTables">
        <link:definition>9954478 - Disclosure - Net Income per Share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IndustrySegmentsTables" roleURI="http://www.tetratec.com/role/IndustrySegmentsTables">
        <link:definition>9954479 - Disclosure - Industry Segments (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 id="OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails" roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails">
        <link:definition>9954480 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails" roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails">
        <link:definition>9954481 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies - Supplemental Cash Flows (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 id="RevenueAdditionalInformationDetails" roleURI="http://www.tetratec.com/role/RevenueAdditionalInformationDetails">
        <link:definition>9954482 - Disclosure - Revenue - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueDisaggregationofRevenueDetails" roleURI="http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails">
        <link:definition>9954483 - Disclosure - Revenue - Disaggregation of 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 id="InventoriesDetails" roleURI="http://www.tetratec.com/role/InventoriesDetails">
        <link:definition>9954484 - Disclosure - 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 id="InvestmentsScheduleofInvestmentsDetails" roleURI="http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails">
        <link:definition>9954485 - Disclosure - Investments - Schedule of Investments (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 id="InvestmentsAdditionalInformationDetails" roleURI="http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails">
        <link:definition>9954486 - Disclosure - Investments - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails" roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails">
        <link:definition>9954487 - Disclosure - Long-Term Debt and Other Borrowings - 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 id="LongTermDebtandOtherBorrowingsAdditionalInformationDetails" roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails">
        <link:definition>9954488 - Disclosure - Long-Term Debt and Other Borrowings - Additional Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="CommitmentsandContingenciesDetails" roleURI="http://www.tetratec.com/role/CommitmentsandContingenciesDetails">
        <link:definition>9954489 - Disclosure - Commitments and Contingencies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsChangeinOurInvestmentsDetails" roleURI="http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails">
        <link:definition>9954490 - Disclosure - Fair Value Measurements - Change in Our Investments (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 id="FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails" roleURI="http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails">
        <link:definition>9954491 - Disclosure - Fair Value Measurements - Market Risks and Derivative Hedge Contracts (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 id="NetIncomeperShareDetails" roleURI="http://www.tetratec.com/role/NetIncomeperShareDetails">
        <link:definition>9954492 - Disclosure - Net Income per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IndustrySegmentsAdditionalDetailsDetails" roleURI="http://www.tetratec.com/role/IndustrySegmentsAdditionalDetailsDetails">
        <link:definition>9954493 - Disclosure - Industry Segments - Additional Details (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 id="IndustrySegmentsScheduleofSegmentFinancialInformationDetails" roleURI="http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails">
        <link:definition>9954494 - Disclosure - Industry Segments - Schedule of Segment Financial Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="tti_DepreciationDepletionAmortizationAndAccretion" abstract="false" name="DepreciationDepletionAmortizationAndAccretion" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_LandAndBuilding" abstract="false" name="LandAndBuilding" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_AutomobilesAndTrucks" abstract="false" name="AutomobilesAndTrucks" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_ChemicalPlants" abstract="false" name="ChemicalPlants" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_TotalOtherAssets" abstract="false" name="TotalOtherAssets" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" abstract="false" name="NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_MineralResourcesArrangementsPolicyTextBlock" abstract="false" name="MineralResourcesArrangementsPolicyTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" abstract="false" name="DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_GrossBrineLeaseAcres" abstract="false" name="GrossBrineLeaseAcres" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:areaItemType"/>
  <xs:element id="tti_ContractWithCustomerLiabilityRevenueRecognizedNet" abstract="false" name="ContractWithCustomerLiabilityRevenueRecognizedNet" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_CompletionFluidsProductsDivisionMember" abstract="true" name="CompletionFluidsProductsDivisionMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_WaterFlowbackServicesMember" abstract="true" name="WaterFlowbackServicesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_KodiakGasServicesInc.Member" abstract="true" name="KodiakGasServicesInc.Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="tti_StandardLithiumLtd.Member" abstract="true" name="StandardLithiumLtd.Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_InvestmentsOtherMember" abstract="true" name="InvestmentsOtherMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="tti_TermLoanMember" abstract="true" name="TermLoanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_AssetBasedCreditAgreementMember" abstract="true" name="AssetBasedCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_SwedishCreditFacilityMember" abstract="true" name="SwedishCreditFacilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_FinlandCreditAgreementMember" abstract="true" name="FinlandCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_DelayedDrawTermLoanDDTLMember" abstract="true" name="DelayedDrawTermLoanDDTLMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="tti_SinglineLoanMember" abstract="true" name="SinglineLoanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="tti_SecuredOvernightFinancingRateSOFRMember" abstract="true" name="SecuredOvernightFinancingRateSOFRMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="tti_FedFundsEffectiveRateMember" abstract="true" name="FedFundsEffectiveRateMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" abstract="true" name="SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="tti_DebtInstrumentCovenantLeverageRatioMaximum" abstract="false" name="DebtInstrumentCovenantLeverageRatioMaximum" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:pureItemType"/>
  <xs:element id="tti_DebtInstrumentCovenantLiquidityMinimumAmount" abstract="false" name="DebtInstrumentCovenantLiquidityMinimumAmount" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_LineOfCreditFacilityAdditionalBorrowingCapacity" abstract="false" name="LineOfCreditFacilityAdditionalBorrowingCapacity" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" abstract="false" name="DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types1:percentItemType"/>
  <xs:element id="tti_OffshoreDivisionMember" abstract="true" name="OffshoreDivisionMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_MaritechMember" abstract="true" name="MaritechMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_InitialBondsMember" abstract="true" name="InitialBondsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_InterimReplacementBondsMember" abstract="true" name="InterimReplacementBondsMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types1:domainItemType"/>
  <xs:element id="tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" abstract="false" name="DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>7
<FILENAME>tti-20250331_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:31d188f3-e502-4f84-8e46-ddb4fc1f350a,g:37a5f24c-bfcc-4cbd-95ae-bb27d63efc4d-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofOperations"/>
  <link:calculationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7e6d071f-c51a-4249-982f-181aa0db2709" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_b3901799-95a8-47ad-b6ed-4ece97756e0e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7e6d071f-c51a-4249-982f-181aa0db2709" xlink:to="loc_us-gaap_GrossProfit_b3901799-95a8-47ad-b6ed-4ece97756e0e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_5f33627d-fa83-459f-8154-25e0782659de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7e6d071f-c51a-4249-982f-181aa0db2709" xlink:to="loc_us-gaap_InterestExpense_5f33627d-fa83-459f-8154-25e0782659de" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_2df20da5-3363-491c-8444-e8ee1fcd5fda" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7e6d071f-c51a-4249-982f-181aa0db2709" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_2df20da5-3363-491c-8444-e8ee1fcd5fda" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_9aa7ee19-e64c-4b93-8172-3e01e8295852" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7e6d071f-c51a-4249-982f-181aa0db2709" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_9aa7ee19-e64c-4b93-8172-3e01e8295852" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_99cab133-6ec8-4135-9c38-e3196b14aa44" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_7e6d071f-c51a-4249-982f-181aa0db2709" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_99cab133-6ec8-4135-9c38-e3196b14aa44" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_8929425c-a438-4449-9208-4cdfc5687139" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_6f1478cf-721f-4d12-b954-5b535c125c8b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses_8929425c-a438-4449-9208-4cdfc5687139" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_6f1478cf-721f-4d12-b954-5b535c125c8b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DepreciationDepletionAmortizationAndAccretion_7f3d10b2-9e22-427b-98a5-93179562bfaf" xlink:href="tti-20250331.xsd#tti_DepreciationDepletionAmortizationAndAccretion"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses_8929425c-a438-4449-9208-4cdfc5687139" xlink:to="loc_tti_DepreciationDepletionAmortizationAndAccretion_7f3d10b2-9e22-427b-98a5-93179562bfaf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetImpairmentCharges_eaa49329-ec04-4d1c-a24b-765d6911ed7d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CostsAndExpenses_8929425c-a438-4449-9208-4cdfc5687139" xlink:to="loc_us-gaap_AssetImpairmentCharges_eaa49329-ec04-4d1c-a24b-765d6911ed7d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_ddeb408d-ea01-4395-a0c1-4710936ae6e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_7736ecb8-d322-490f-8db9-8a14669a94bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_ddeb408d-ea01-4395-a0c1-4710936ae6e2" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_7736ecb8-d322-490f-8db9-8a14669a94bf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_94451636-252e-4ef5-aa1b-92572dbe07f5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_ddeb408d-ea01-4395-a0c1-4710936ae6e2" xlink:to="loc_us-gaap_CostsAndExpenses_94451636-252e-4ef5-aa1b-92572dbe07f5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_3367f976-4e3f-45d0-a22a-1ee8a8e64825" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_e74c48f3-4815-4eb1-bdd0-251f2a2279de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_3367f976-4e3f-45d0-a22a-1ee8a8e64825" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_e74c48f3-4815-4eb1-bdd0-251f2a2279de" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_6b0dc239-4026-487f-9582-bb87daa7087d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_3367f976-4e3f-45d0-a22a-1ee8a8e64825" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_6b0dc239-4026-487f-9582-bb87daa7087d" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofComprehensiveIncomeLoss"/>
  <link:calculationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_faa24bcd-ac1d-4a29-8c3d-7f5180346940" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_16198311-5535-4af0-bb4c-f0b96c028f21" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_faa24bcd-ac1d-4a29-8c3d-7f5180346940" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_16198311-5535-4af0-bb4c-f0b96c028f21" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_7c356d8f-d4fc-4e61-ae32-73043b64001b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_faa24bcd-ac1d-4a29-8c3d-7f5180346940" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_7c356d8f-d4fc-4e61-ae32-73043b64001b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_acd58a7a-dffb-47dd-9270-5be45c09bdd1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfitLoss"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_faa24bcd-ac1d-4a29-8c3d-7f5180346940" xlink:to="loc_us-gaap_ProfitLoss_acd58a7a-dffb-47dd-9270-5be45c09bdd1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_eba4a14e-4ef1-4fde-b0f2-4b11aeb8c365" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_faa24bcd-ac1d-4a29-8c3d-7f5180346940" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_eba4a14e-4ef1-4fde-b0f2-4b11aeb8c365" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.tetratec.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_66eaa884-45f4-4118-8289-25fd2ecd81c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_82f627d5-9851-4fc0-bf45-67b5f1d3e158" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_66eaa884-45f4-4118-8289-25fd2ecd81c9" xlink:to="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_82f627d5-9851-4fc0-bf45-67b5f1d3e158" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeCurrent_6a651314-5cae-4a44-89ed-b07ff194e17e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_66eaa884-45f4-4118-8289-25fd2ecd81c9" xlink:to="loc_us-gaap_DeferredIncomeCurrent_6a651314-5cae-4a44-89ed-b07ff194e17e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_ede98fb0-344e-49d2-914a-a7543cfe90f7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_66eaa884-45f4-4118-8289-25fd2ecd81c9" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_ede98fb0-344e-49d2-914a-a7543cfe90f7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrent_2e69f161-da55-4b60-88eb-67aabcddb824" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TaxesPayableCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_66eaa884-45f4-4118-8289-25fd2ecd81c9" xlink:to="loc_us-gaap_TaxesPayableCurrent_2e69f161-da55-4b60-88eb-67aabcddb824" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_ab1fffcd-c7dd-47dc-b08a-506a931eca30" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_66eaa884-45f4-4118-8289-25fd2ecd81c9" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_ab1fffcd-c7dd-47dc-b08a-506a931eca30" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_1d9742f2-ac7c-408f-a5a3-eb5c045ad650" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_66eaa884-45f4-4118-8289-25fd2ecd81c9" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_1d9742f2-ac7c-408f-a5a3-eb5c045ad650" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_aee8af34-4eff-4ba8-bfd4-302d5b4ffec4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_f3b375e3-2e46-4253-a663-b10d296d2178" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_aee8af34-4eff-4ba8-bfd4-302d5b4ffec4" xlink:to="loc_us-gaap_CommonStockValue_f3b375e3-2e46-4253-a663-b10d296d2178" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital_dcf04665-0619-43b5-a673-903e20bdd922" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_aee8af34-4eff-4ba8-bfd4-302d5b4ffec4" xlink:to="loc_us-gaap_AdditionalPaidInCapital_dcf04665-0619-43b5-a673-903e20bdd922" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_be7aa644-5315-4f38-8fd4-d721397a7676" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_aee8af34-4eff-4ba8-bfd4-302d5b4ffec4" xlink:to="loc_us-gaap_TreasuryStockValue_be7aa644-5315-4f38-8fd4-d721397a7676" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_9275fa80-17d8-466d-9ca3-7bdf7ec864cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_aee8af34-4eff-4ba8-bfd4-302d5b4ffec4" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_9275fa80-17d8-466d-9ca3-7bdf7ec864cb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_c68e7883-6136-40f6-9762-d0c0e4fd9f47" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_aee8af34-4eff-4ba8-bfd4-302d5b4ffec4" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_c68e7883-6136-40f6-9762-d0c0e4fd9f47" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_e14a7868-0efe-4126-b33f-44803af18a59" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_dc413a42-f67d-4804-b125-8ef1a9eb36a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_e14a7868-0efe-4126-b33f-44803af18a59" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_dc413a42-f67d-4804-b125-8ef1a9eb36a4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_0e4eb9e7-a0fd-4eb7-9853-c225f032959f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_e14a7868-0efe-4126-b33f-44803af18a59" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_0e4eb9e7-a0fd-4eb7-9853-c225f032959f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_71ea0488-a404-4e25-8142-9ede8311c85f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_LandAndBuilding_2b9b9927-dd74-4319-8930-d7eeaf6c3b10" xlink:href="tti-20250331.xsd#tti_LandAndBuilding"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_71ea0488-a404-4e25-8142-9ede8311c85f" xlink:to="loc_tti_LandAndBuilding_2b9b9927-dd74-4319-8930-d7eeaf6c3b10" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_5bb6f268-3443-4e83-bfa1-cfc0b95fcc30" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_71ea0488-a404-4e25-8142-9ede8311c85f" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_5bb6f268-3443-4e83-bfa1-cfc0b95fcc30" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_AutomobilesAndTrucks_88516c2a-19c3-430c-b180-dac7f4649e3b" xlink:href="tti-20250331.xsd#tti_AutomobilesAndTrucks"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_71ea0488-a404-4e25-8142-9ede8311c85f" xlink:to="loc_tti_AutomobilesAndTrucks_88516c2a-19c3-430c-b180-dac7f4649e3b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_ChemicalPlants_3cc39096-d654-45b5-9558-054ca50dd8aa" xlink:href="tti-20250331.xsd#tti_ChemicalPlants"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_71ea0488-a404-4e25-8142-9ede8311c85f" xlink:to="loc_tti_ChemicalPlants_3cc39096-d654-45b5-9558-054ca50dd8aa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross_63bb1e20-8e9c-4882-8062-3a4439b22e66" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_71ea0488-a404-4e25-8142-9ede8311c85f" xlink:to="loc_us-gaap_ConstructionInProgressGross_63bb1e20-8e9c-4882-8062-3a4439b22e66" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_c0e19911-6412-4161-88e2-1be53b86b530" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_c2c6aeba-a99a-47d1-9a68-968c3c34a757" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_c0e19911-6412-4161-88e2-1be53b86b530" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_c2c6aeba-a99a-47d1-9a68-968c3c34a757" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_7d06f44c-7180-406c-98c3-82e4216d1768" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_c0e19911-6412-4161-88e2-1be53b86b530" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_7d06f44c-7180-406c-98c3-82e4216d1768" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetRetirementObligationsNoncurrent_fea7de5e-7424-4cf0-acd0-a23ddd85a49d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetRetirementObligationsNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_c0e19911-6412-4161-88e2-1be53b86b530" xlink:to="loc_us-gaap_AssetRetirementObligationsNoncurrent_fea7de5e-7424-4cf0-acd0-a23ddd85a49d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_72f24873-c706-489c-b4f2-e7b8dcfd7634" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_c0e19911-6412-4161-88e2-1be53b86b530" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_72f24873-c706-489c-b4f2-e7b8dcfd7634" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_73b7a41f-e142-40bb-b78c-865151aefa6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_c0e19911-6412-4161-88e2-1be53b86b530" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_73b7a41f-e142-40bb-b78c-865151aefa6e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_06ca88f5-a2c0-49fe-8cc8-d32cdd53f567" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_839090d3-5d25-49f3-88fe-1b38c953c96f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_06ca88f5-a2c0-49fe-8cc8-d32cdd53f567" xlink:to="loc_us-gaap_AssetsCurrent_839090d3-5d25-49f3-88fe-1b38c953c96f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_e491530e-6827-423e-ad31-2d075dfcede1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_06ca88f5-a2c0-49fe-8cc8-d32cdd53f567" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_e491530e-6827-423e-ad31-2d075dfcede1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TotalOtherAssets_3d654b3f-a0af-433c-beff-28b7b1f02bc2" xlink:href="tti-20250331.xsd#tti_TotalOtherAssets"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_06ca88f5-a2c0-49fe-8cc8-d32cdd53f567" xlink:to="loc_tti_TotalOtherAssets_3d654b3f-a0af-433c-beff-28b7b1f02bc2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_865198f9-4c8b-4e2e-b04f-f59ed074733c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_5564cec4-0493-4aa5-aa50-6206ffaf8b28" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_865198f9-4c8b-4e2e-b04f-f59ed074733c" xlink:to="loc_us-gaap_StockholdersEquity_5564cec4-0493-4aa5-aa50-6206ffaf8b28" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MinorityInterest_0799dcd2-8491-46d8-86d7-a13672030e73" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MinorityInterest"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_865198f9-4c8b-4e2e-b04f-f59ed074733c" xlink:to="loc_us-gaap_MinorityInterest_0799dcd2-8491-46d8-86d7-a13672030e73" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_5e248002-ef0e-48b2-b148-4592b5ee3099" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_b8be90e8-82cb-4529-9daa-241fbdd24d35" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_5e248002-ef0e-48b2-b148-4592b5ee3099" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_b8be90e8-82cb-4529-9daa-241fbdd24d35" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_1c5e2ca4-0ddb-4b31-a623-83ccf52d3309" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_5e248002-ef0e-48b2-b148-4592b5ee3099" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_1c5e2ca4-0ddb-4b31-a623-83ccf52d3309" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_224d701b-d5ae-44d6-8239-baf1508455cf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_5e248002-ef0e-48b2-b148-4592b5ee3099" xlink:to="loc_us-gaap_InventoryNet_224d701b-d5ae-44d6-8239-baf1508455cf" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_17e53754-e808-48b6-a8fb-4b8233ebdff0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_5e248002-ef0e-48b2-b148-4592b5ee3099" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_17e53754-e808-48b6-a8fb-4b8233ebdff0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_33d8d0be-35bc-433a-b080-186a0d073f0c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_5e248002-ef0e-48b2-b148-4592b5ee3099" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_33d8d0be-35bc-433a-b080-186a0d073f0c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TotalOtherAssets_366747d1-4b3d-407d-ab9b-6f6be16f0c4e" xlink:href="tti-20250331.xsd#tti_TotalOtherAssets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_2c8d4d2a-e4e2-40d6-9f6f-39a5e9010873" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_tti_TotalOtherAssets_366747d1-4b3d-407d-ab9b-6f6be16f0c4e" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_2c8d4d2a-e4e2-40d6-9f6f-39a5e9010873" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_f38b713b-41bb-4d84-bc08-ce792d6986b0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_tti_TotalOtherAssets_366747d1-4b3d-407d-ab9b-6f6be16f0c4e" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_f38b713b-41bb-4d84-bc08-ce792d6986b0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNi_36fde271-f934-471a-9160-9fd852a9889d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesFvNi"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_tti_TotalOtherAssets_366747d1-4b3d-407d-ab9b-6f6be16f0c4e" xlink:to="loc_us-gaap_EquitySecuritiesFvNi_36fde271-f934-471a-9160-9fd852a9889d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_d30c567f-93a7-4c92-b46a-6278d4ca04c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_tti_TotalOtherAssets_366747d1-4b3d-407d-ab9b-6f6be16f0c4e" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_d30c567f-93a7-4c92-b46a-6278d4ca04c9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_2b5bb34d-24fa-4097-8820-04ee3c533fc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_tti_TotalOtherAssets_366747d1-4b3d-407d-ab9b-6f6be16f0c4e" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_2b5bb34d-24fa-4097-8820-04ee3c533fc0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_327f5fcb-18de-46ab-97d0-973b1c0199ae" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_c54ac1ad-ba43-4083-af17-da23ef143ff2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_327f5fcb-18de-46ab-97d0-973b1c0199ae" xlink:to="loc_us-gaap_LiabilitiesCurrent_c54ac1ad-ba43-4083-af17-da23ef143ff2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_bca21a55-d0d8-4dd2-83c4-d591bd0ea4be" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_327f5fcb-18de-46ab-97d0-973b1c0199ae" xlink:to="loc_us-gaap_LiabilitiesNoncurrent_bca21a55-d0d8-4dd2-83c4-d591bd0ea4be" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_64479702-8afd-4909-8ad8-fcaa9a2fca05" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_327f5fcb-18de-46ab-97d0-973b1c0199ae" xlink:to="loc_us-gaap_CommitmentsAndContingencies_64479702-8afd-4909-8ad8-fcaa9a2fca05" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_40316709-80cb-464f-8683-bbec0ab8106c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_327f5fcb-18de-46ab-97d0-973b1c0199ae" xlink:to="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_40316709-80cb-464f-8683-bbec0ab8106c" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_372295af-9352-4aed-bdff-d71872185309" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_5dd2be8f-28c0-42eb-a28e-bd9ad884d9ed" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_372295af-9352-4aed-bdff-d71872185309" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_5dd2be8f-28c0-42eb-a28e-bd9ad884d9ed" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_506b2ea2-a322-4198-8137-ad829e633bf0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_372295af-9352-4aed-bdff-d71872185309" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_506b2ea2-a322-4198-8137-ad829e633bf0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_b801a2ce-f85e-40e7-b642-686686a80d26" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_c8ef345b-7dfa-48f5-bd84-f44e76d38272" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_b801a2ce-f85e-40e7-b642-686686a80d26" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_c8ef345b-7dfa-48f5-bd84-f44e76d38272" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_47cb4f90-7616-47d2-af88-15fa99101b41" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_b801a2ce-f85e-40e7-b642-686686a80d26" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_47cb4f90-7616-47d2-af88-15fa99101b41" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0c66fb69-4245-444e-b765-1509bd3e3c02" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_b801a2ce-f85e-40e7-b642-686686a80d26" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_0c66fb69-4245-444e-b765-1509bd3e3c02" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_cd3b5938-f9f1-48d0-b2db-9928a4cc84b7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_b801a2ce-f85e-40e7-b642-686686a80d26" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_cd3b5938-f9f1-48d0-b2db-9928a4cc84b7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_965777bc-0903-4314-9f17-5a8ad380c6d9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_965777bc-0903-4314-9f17-5a8ad380c6d9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_6a82cbcb-717e-4cd7-8b6c-ac81c32f6a6e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_6a82cbcb-717e-4cd7-8b6c-ac81c32f6a6e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_6d142a2a-9a40-48bf-8f97-ddcd8218c378" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_6d142a2a-9a40-48bf-8f97-ddcd8218c378" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome_977181bb-f806-49b0-8b09-9b30597f5c82" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome_977181bb-f806-49b0-8b09-9b30597f5c82" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_29d4c5d8-419e-4761-a0a6-6153c49a11bd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_29d4c5d8-419e-4761-a0a6-6153c49a11bd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_6ec59280-a82e-49f6-89a0-0ee0163c4278" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_6ec59280-a82e-49f6-89a0-0ee0163c4278" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_9563a5eb-3b1c-407b-9ce2-ed6dc7ce0789" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_9563a5eb-3b1c-407b-9ce2-ed6dc7ce0789" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_a04680e2-1eea-4bc2-868b-f66d24320039" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_ShareBasedCompensation_a04680e2-1eea-4bc2-868b-f66d24320039" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_293f2d12-c894-4c5a-9903-58db1a3109fc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="9" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_293f2d12-c894-4c5a-9903-58db1a3109fc" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_97ecd3ba-cb41-4f52-a3a2-7499787644f4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_97ecd3ba-cb41-4f52-a3a2-7499787644f4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_d5d692bb-a95b-4b93-8d9e-45ac85154cb6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfitLoss"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_ProfitLoss_d5d692bb-a95b-4b93-8d9e-45ac85154cb6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_737db27d-b306-409d-a367-92fea9e71a90" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_737db27d-b306-409d-a367-92fea9e71a90" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_981be385-06f7-4b7c-937d-427acfcadcba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:calculationArc order="13" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_981be385-06f7-4b7c-937d-427acfcadcba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_7e8fc9fc-bdf2-40e6-8208-c24c37bfa315" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="14" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_7e8fc9fc-bdf2-40e6-8208-c24c37bfa315" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetImpairmentCharges_9453af39-57ba-4543-96d6-fcb28fb127fa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges"/>
    <link:calculationArc order="15" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_us-gaap_AssetImpairmentCharges_9453af39-57ba-4543-96d6-fcb28fb127fa" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax_b86e42fd-2d66-4025-ba3e-318a82d6a679" xlink:href="tti-20250331.xsd#tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax"/>
    <link:calculationArc order="16" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_3358b70d-c64d-4dcf-aa22-28a9d9eb7b20" xlink:to="loc_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax_b86e42fd-2d66-4025-ba3e-318a82d6a679" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_33f6a6c4-1bba-4389-a8bf-2b4ad2822fd5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_2d83ce2a-0a65-4dba-aea0-73aac59a8205" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_33f6a6c4-1bba-4389-a8bf-2b4ad2822fd5" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_2d83ce2a-0a65-4dba-aea0-73aac59a8205" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_46ad8d4b-9dfe-4d57-98de-fb046a9e6e6c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_33f6a6c4-1bba-4389-a8bf-2b4ad2822fd5" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_46ad8d4b-9dfe-4d57-98de-fb046a9e6e6c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_6945bf02-df62-4d2a-b875-3eef0a06076b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_33f6a6c4-1bba-4389-a8bf-2b4ad2822fd5" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_6945bf02-df62-4d2a-b875-3eef0a06076b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_765aa07d-82d2-45ec-ae55-ceefec174d0b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_33f6a6c4-1bba-4389-a8bf-2b4ad2822fd5" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_765aa07d-82d2-45ec-ae55-ceefec174d0b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts_8ad8993c-2a4c-42a1-a781-d4761cacaf95" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_33f6a6c4-1bba-4389-a8bf-2b4ad2822fd5" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts_8ad8993c-2a4c-42a1-a781-d4761cacaf95" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_bd3f9515-927d-4d6d-99c6-7db97646093d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_7dac73d9-3f77-421c-a9a8-674b0b83a041" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_bd3f9515-927d-4d6d-99c6-7db97646093d" xlink:to="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_7dac73d9-3f77-421c-a9a8-674b0b83a041" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_0fe2b42e-4abc-4c8b-a851-e943be5a4d97" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_bd3f9515-927d-4d6d-99c6-7db97646093d" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_0fe2b42e-4abc-4c8b-a851-e943be5a4d97" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e8eda0be-ffe5-4a0a-8631-30b316279a87" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_bd3f9515-927d-4d6d-99c6-7db97646093d" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_e8eda0be-ffe5-4a0a-8631-30b316279a87" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_4ed7894f-5da8-4057-bd2f-104397433b15" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_bd3f9515-927d-4d6d-99c6-7db97646093d" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_4ed7894f-5da8-4057-bd2f-104397433b15" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InventoriesDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#InventoriesDetails"/>
  <link:calculationLink xlink:role="http://www.tetratec.com/role/InventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_56ed6d42-0e33-4a6b-b225-dbba447cf158" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcess_47934f15-4d43-4df7-8c10-ec9e7e273b25" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcess"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_56ed6d42-0e33-4a6b-b225-dbba447cf158" xlink:to="loc_us-gaap_InventoryWorkInProcess_47934f15-4d43-4df7-8c10-ec9e7e273b25" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_911a54c1-4b82-41a3-83e4-0829f2b79858" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_56ed6d42-0e33-4a6b-b225-dbba447cf158" xlink:to="loc_us-gaap_InventoryFinishedGoods_911a54c1-4b82-41a3-83e4-0829f2b79858" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials_57bb4b09-5d06-41ed-8cda-7d9994bed430" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterials"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_56ed6d42-0e33-4a6b-b225-dbba447cf158" xlink:to="loc_us-gaap_InventoryRawMaterials_57bb4b09-5d06-41ed-8cda-7d9994bed430" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInventorySupplies_1cda188f-a15b-4cbc-a4cc-e930dda79f82" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherInventorySupplies"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_56ed6d42-0e33-4a6b-b225-dbba447cf158" xlink:to="loc_us-gaap_OtherInventorySupplies_1cda188f-a15b-4cbc-a4cc-e930dda79f82" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/CommitmentsandContingenciesDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#CommitmentsandContingenciesDetails"/>
  <link:calculationLink xlink:role="http://www.tetratec.com/role/CommitmentsandContingenciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_1503baff-8d96-426b-868e-7182e9cac86e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_9c739972-7f3c-42ea-979c-a8342e843177" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_1503baff-8d96-426b-868e-7182e9cac86e" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_9c739972-7f3c-42ea-979c-a8342e843177" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_fd2c9a4e-ce6d-4f80-87b7-7b65ca2960f8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_1503baff-8d96-426b-868e-7182e9cac86e" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_fd2c9a4e-ce6d-4f80-87b7-7b65ca2960f8" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_8f10f817-1da1-4f57-84bc-a1658eddf98a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_1503baff-8d96-426b-868e-7182e9cac86e" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_8f10f817-1da1-4f57-84bc-a1658eddf98a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_1b50286a-65aa-4ff4-85dc-c82e9c690ce3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_1503baff-8d96-426b-868e-7182e9cac86e" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_1b50286a-65aa-4ff4-85dc-c82e9c690ce3" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/NetIncomeperShareDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#NetIncomeperShareDetails"/>
  <link:calculationLink xlink:role="http://www.tetratec.com/role/NetIncomeperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_3cd2d5e3-3af2-4b60-80fc-3d8395c50c1d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2ff70e6d-241c-4d73-b795-1198fc1ca652" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_3cd2d5e3-3af2-4b60-80fc-3d8395c50c1d" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_2ff70e6d-241c-4d73-b795-1198fc1ca652" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_56935cca-8e4d-40b3-a07d-2db7e5cd457e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_3cd2d5e3-3af2-4b60-80fc-3d8395c50c1d" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_56935cca-8e4d-40b3-a07d-2db7e5cd457e" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>8
<FILENAME>tti-20250331_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:31d188f3-e502-4f84-8e46-ddb4fc1f350a,g:37a5f24c-bfcc-4cbd-95ae-bb27d63efc4d-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://www.tetratec.com/role/CoverPage" xlink:type="simple" xlink:href="tti-20250331.xsd#CoverPage"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationTable_b6ede31e-8ba2-4be7-80c5-2991a9007664" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentInformationTable_b6ede31e-8ba2-4be7-80c5-2991a9007664" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_cce1f94c-b030-418e-b018-fb80d2ed5805" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_dei_DocumentInformationTable_b6ede31e-8ba2-4be7-80c5-2991a9007664" xlink:to="loc_us-gaap_StatementClassOfStockAxis_cce1f94c-b030-418e-b018-fb80d2ed5805" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_cce1f94c-b030-418e-b018-fb80d2ed5805_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementClassOfStockAxis_cce1f94c-b030-418e-b018-fb80d2ed5805" xlink:to="loc_us-gaap_ClassOfStockDomain_cce1f94c-b030-418e-b018-fb80d2ed5805_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementClassOfStockAxis_cce1f94c-b030-418e-b018-fb80d2ed5805" xlink:to="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_5390c33c-7438-4271-8b84-f3c7b0003a98" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:to="loc_us-gaap_CommonStockMember_5390c33c-7438-4271-8b84-f3c7b0003a98" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesAPreferredStockMember_a20dc9dc-f41e-45c7-9fad-6d3230f09748" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SeriesAPreferredStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:to="loc_us-gaap_SeriesAPreferredStockMember_a20dc9dc-f41e-45c7-9fad-6d3230f09748" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_55a352f4-e821-4b4e-b6b9-88226757c774" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentType_55a352f4-e821-4b4e-b6b9-88226757c774" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport_2c4c7c45-9dc5-4134-a06e-995bbe942247" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentQuarterlyReport_2c4c7c45-9dc5-4134-a06e-995bbe942247" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_7de51ef0-e839-4229-9055-ca407e6ec620" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentPeriodEndDate_7de51ef0-e839-4229-9055-ca407e6ec620" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_85e4174d-6537-489c-922b-357ace4ff071" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentTransitionReport_85e4174d-6537-489c-922b-357ace4ff071" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_f92eda8d-f0c3-49c8-9d16-72335180bcdf" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityFileNumber_f92eda8d-f0c3-49c8-9d16-72335180bcdf" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_66f39238-7b22-4ab9-ae3e-c52ed1f16b56" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityRegistrantName_66f39238-7b22-4ab9-ae3e-c52ed1f16b56" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_e4609d12-4f64-4831-9a73-a2ed60f1c25e" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityIncorporationStateCountryCode_e4609d12-4f64-4831-9a73-a2ed60f1c25e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_ca1dd4bd-4482-4279-9b42-8fde0ef09aac" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityTaxIdentificationNumber_ca1dd4bd-4482-4279-9b42-8fde0ef09aac" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_ebf811ee-69e9-4d54-8b05-373de698bc49" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressAddressLine1_ebf811ee-69e9-4d54-8b05-373de698bc49" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_89d90843-cf01-443f-b587-e9fb7b3b9794" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressCityOrTown_89d90843-cf01-443f-b587-e9fb7b3b9794" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_f7db9528-d3e8-42d7-a97c-cec744bef941" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressPostalZipCode_f7db9528-d3e8-42d7-a97c-cec744bef941" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_17807f39-4621-4d49-aa1b-1996836aa28d" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressStateOrProvince_17807f39-4621-4d49-aa1b-1996836aa28d" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_72fcb675-f468-481b-b15f-63627a2c5698" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_CityAreaCode_72fcb675-f468-481b-b15f-63627a2c5698" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_2cc250c4-c67c-4774-8315-6d6e7fdc4a06" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_LocalPhoneNumber_2cc250c4-c67c-4774-8315-6d6e7fdc4a06" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_c3a8a58c-fdee-4cc4-959e-8540184f7766" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_Security12bTitle_c3a8a58c-fdee-4cc4-959e-8540184f7766" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_014c80a2-94cb-4140-82cb-d707a938c885" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_TradingSymbol_014c80a2-94cb-4140-82cb-d707a938c885" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_081cab03-4608-4fc1-a309-6d89299c1016" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_SecurityExchangeName_081cab03-4608-4fc1-a309-6d89299c1016" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_NoTradingSymbolFlag_a0966ac6-651c-4c68-9208-f55fca1f6134" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_NoTradingSymbolFlag_a0966ac6-651c-4c68-9208-f55fca1f6134" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_acfb127d-f6a5-4e4e-aff9-3a0584e6a26a" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityCurrentReportingStatus_acfb127d-f6a5-4e4e-aff9-3a0584e6a26a" xlink:type="arc" order="18"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_31f08e56-24e6-47da-92d0-2b9686e6600b" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityInteractiveDataCurrent_31f08e56-24e6-47da-92d0-2b9686e6600b" xlink:type="arc" order="19"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_061ed393-34c8-44cb-a6d4-fa68de7de24e" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityShellCompany_061ed393-34c8-44cb-a6d4-fa68de7de24e" xlink:type="arc" order="20"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_8f9473dc-e4c1-4306-9c22-3781bed52635" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_8f9473dc-e4c1-4306-9c22-3781bed52635" xlink:type="arc" order="21"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_ebcd59bf-9fd9-4fba-a760-a9ca3d8a5a7e" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityCentralIndexKey_ebcd59bf-9fd9-4fba-a760-a9ca3d8a5a7e" xlink:type="arc" order="22"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_d206a797-2f89-4e50-b579-b3084654de3f" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_CurrentFiscalYearEndDate_d206a797-2f89-4e50-b579-b3084654de3f" xlink:type="arc" order="23"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_b3b75d51-70cb-4d4e-b8f0-034bdccfe8d3" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityFilerCategory_b3b75d51-70cb-4d4e-b8f0-034bdccfe8d3" xlink:type="arc" order="24"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_309e48f0-4670-48fa-9278-5ef84d2dde1c" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntitySmallBusiness_309e48f0-4670-48fa-9278-5ef84d2dde1c" xlink:type="arc" order="25"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_ee8a984f-504f-4067-86f1-9ae0ce7f0069" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityEmergingGrowthCompany_ee8a984f-504f-4067-86f1-9ae0ce7f0069" xlink:type="arc" order="26"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_d97df84b-4750-4535-9da1-d7ed027967b5" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentFiscalYearFocus_d97df84b-4750-4535-9da1-d7ed027967b5" xlink:type="arc" order="27"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_9a0ba082-054b-4e93-856d-f3e29a47e738" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentFiscalPeriodFocus_9a0ba082-054b-4e93-856d-f3e29a47e738" xlink:type="arc" order="28"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_4ac3d379-ba92-4903-a91e-3afecd4059af" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_AmendmentFlag_4ac3d379-ba92-4903-a91e-3afecd4059af" xlink:type="arc" order="29"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofOperations"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_c3c4dbc5-916d-45d6-8525-5dd2aaabf42e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_StatementTable_c3c4dbc5-916d-45d6-8525-5dd2aaabf42e" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_559a7aa2-e44e-4353-8479-26b05cd3c732" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_c3c4dbc5-916d-45d6-8525-5dd2aaabf42e" xlink:to="loc_srt_ProductOrServiceAxis_559a7aa2-e44e-4353-8479-26b05cd3c732" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_559a7aa2-e44e-4353-8479-26b05cd3c732_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_559a7aa2-e44e-4353-8479-26b05cd3c732" xlink:to="loc_srt_ProductsAndServicesDomain_559a7aa2-e44e-4353-8479-26b05cd3c732_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_559a7aa2-e44e-4353-8479-26b05cd3c732" xlink:to="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductMember_1bea3567-5f85-4410-a89d-e0f258c92a39" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:to="loc_us-gaap_ProductMember_1bea3567-5f85-4410-a89d-e0f258c92a39" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ServiceMember_39555e1f-2a2b-430d-894d-7b7b2fea534d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ServiceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:to="loc_us-gaap_ServiceMember_39555e1f-2a2b-430d-894d-7b7b2fea534d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract_ac530480-c1f5-42e3-8bf8-c377f0cdd82c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_RevenuesAbstract_ac530480-c1f5-42e3-8bf8-c377f0cdd82c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_d3defd48-9f66-49c8-8a6e-e05ac8f1d690" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RevenuesAbstract_ac530480-c1f5-42e3-8bf8-c377f0cdd82c" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_d3defd48-9f66-49c8-8a6e-e05ac8f1d690" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_c4c9c9f3-ef40-4f25-ad3b-9e894f56602b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_c4c9c9f3-ef40-4f25-ad3b-9e894f56602b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DepreciationDepletionAmortizationAndAccretion_1b93f7ba-8e49-4650-8782-d83d702b2ac9" xlink:href="tti-20250331.xsd#tti_DepreciationDepletionAmortizationAndAccretion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_tti_DepreciationDepletionAmortizationAndAccretion_1b93f7ba-8e49-4650-8782-d83d702b2ac9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetImpairmentCharges_8236acfd-8fe0-4908-9f11-ea66c3148a41" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_us-gaap_AssetImpairmentCharges_8236acfd-8fe0-4908-9f11-ea66c3148a41" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_df99b457-a834-44c4-9a9c-7d0a45d74172" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_us-gaap_CostsAndExpenses_df99b457-a834-44c4-9a9c-7d0a45d74172" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_2da9f1dc-6071-4a31-a282-b4d487c1b370" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_GrossProfit_2da9f1dc-6071-4a31-a282-b4d487c1b370" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_9b17313a-85b7-4269-a2cd-46d38fa53fba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_9b17313a-85b7-4269-a2cd-46d38fa53fba" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_faeff702-d213-4d4c-8397-b14eac3e85bc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_InterestExpense_faeff702-d213-4d4c-8397-b14eac3e85bc" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_c55cea58-a0fa-4724-b358-1e760c38f737" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_c55cea58-a0fa-4724-b358-1e760c38f737" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_05071eb1-0a0e-4ad5-8dfb-88fc68d13eee" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_05071eb1-0a0e-4ad5-8dfb-88fc68d13eee" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_ddf30693-3c7c-4428-8a8b-a9ecd5b337e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_ddf30693-3c7c-4428-8a8b-a9ecd5b337e9" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_ab4bdb9f-09dd-4f92-a088-7657b8ca131d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_ab4bdb9f-09dd-4f92-a088-7657b8ca131d" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_05ec7877-3bac-44a5-9179-684aa2249b42" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_NetIncomeLoss_05ec7877-3bac-44a5-9179-684aa2249b42" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract_3aa8293f-50d7-4e82-afbb-b67f98e7e328" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_EarningsPerShareBasicAbstract_3aa8293f-50d7-4e82-afbb-b67f98e7e328" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_0a77a83e-9d23-4633-840e-f2ae14c5df05" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_3aa8293f-50d7-4e82-afbb-b67f98e7e328" xlink:to="loc_us-gaap_EarningsPerShareBasic_0a77a83e-9d23-4633-840e-f2ae14c5df05" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_3eda5ae4-e2c9-48d9-9f41-9f19af6631e4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_3eda5ae4-e2c9-48d9-9f41-9f19af6631e4" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract_2b893b36-8370-4508-9bb5-4767e182dc83" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_EarningsPerShareDilutedAbstract_2b893b36-8370-4508-9bb5-4767e182dc83" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_0b6173d3-5757-48b5-9627-8b02ed7ef9f3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_2b893b36-8370-4508-9bb5-4767e182dc83" xlink:to="loc_us-gaap_EarningsPerShareDiluted_0b6173d3-5757-48b5-9627-8b02ed7ef9f3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_5297708c-7c92-4927-a471-000d513784de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_5297708c-7c92-4927-a471-000d513784de" xlink:type="arc" order="13"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementofEquityStatement"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_3ba0a082-3ad7-4e1c-9bdc-87edcbf4b7cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_StatementTable_3ba0a082-3ad7-4e1c-9bdc-87edcbf4b7cd" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_de050c13-774c-496c-9b60-e248d97abb70" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_3ba0a082-3ad7-4e1c-9bdc-87edcbf4b7cd" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_de050c13-774c-496c-9b60-e248d97abb70" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_de050c13-774c-496c-9b60-e248d97abb70_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_de050c13-774c-496c-9b60-e248d97abb70" xlink:to="loc_us-gaap_EquityComponentDomain_de050c13-774c-496c-9b60-e248d97abb70_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_de050c13-774c-496c-9b60-e248d97abb70" xlink:to="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_01d7cdf5-8f3f-4a0d-a035-fb234e0289bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_CommonStockMember_01d7cdf5-8f3f-4a0d-a035-fb234e0289bf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_a5cdb5e2-311f-42e4-8914-513258ac7170" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_a5cdb5e2-311f-42e4-8914-513258ac7170" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonMember_6c425034-c6bb-4202-8932-1d3ab6c2bd85" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_TreasuryStockCommonMember_6c425034-c6bb-4202-8932-1d3ab6c2bd85" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_6b83e987-473d-44ec-822d-ea0eeb572b67" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedTranslationAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_6b83e987-473d-44ec-822d-ea0eeb572b67" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember_005586e5-e0ab-4724-b80c-8d0a687b1d30" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember_005586e5-e0ab-4724-b80c-8d0a687b1d30" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_3f165228-04b7-4495-822e-39f3d55ce0ba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_RetainedEarningsMember_3f165228-04b7-4495-822e-39f3d55ce0ba" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncontrollingInterestMember_005204b3-6761-4fe6-9ca0-7212b153326c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncontrollingInterestMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_NoncontrollingInterestMember_005204b3-6761-4fe6-9ca0-7212b153326c" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_3ddbaaee-beb1-4b8c-a02a-607605cb6bfb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_3ddbaaee-beb1-4b8c-a02a-607605cb6bfb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_d808036e-3c32-4f78-a7f5-113a61e245e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfitLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_ProfitLoss_d808036e-3c32-4f78-a7f5-113a61e245e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_9c161910-19f2-495f-996d-224263ef6d87" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_9c161910-19f2-495f-996d-224263ef6d87" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_1621a29f-1bdc-434d-900d-75d3e310725b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_1621a29f-1bdc-434d-900d-75d3e310725b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_2901d5ca-f802-491c-8360-281f26d31446" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_2901d5ca-f802-491c-8360-281f26d31446" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_86774571-7c46-4ef6-817f-314a47d5a2bb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_86774571-7c46-4ef6-817f-314a47d5a2bb" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_32da8d16-85ae-4666-a107-2ec76a4976bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_32da8d16-85ae-4666-a107-2ec76a4976bf" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityOther_664b0bb7-b341-4cbd-8466-de8960d9c5bd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityOther"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_StockholdersEquityOther_664b0bb7-b341-4cbd-8466-de8960d9c5bd" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_260e35e1-f998-44f8-b03d-c306691c48e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsPayableTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_81645762-15e9-4bde-98a8-9fad56f1c198" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_81645762-15e9-4bde-98a8-9fad56f1c198" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_81645762-15e9-4bde-98a8-9fad56f1c198_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_81645762-15e9-4bde-98a8-9fad56f1c198" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_81645762-15e9-4bde-98a8-9fad56f1c198_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1d6b2025-53db-4d74-bf7e-ccb3c60a7b1c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_81645762-15e9-4bde-98a8-9fad56f1c198" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1d6b2025-53db-4d74-bf7e-ccb3c60a7b1c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_15daee6a-46d9-4f4b-973b-af1565a2360a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1d6b2025-53db-4d74-bf7e-ccb3c60a7b1c" xlink:to="loc_us-gaap_LetterOfCreditMember_15daee6a-46d9-4f4b-973b-af1565a2360a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_3fe97927-140d-4f94-a08d-7563840be090" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:to="loc_srt_RestatementAxis_3fe97927-140d-4f94-a08d-7563840be090" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_3fe97927-140d-4f94-a08d-7563840be090_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RestatementAxis_3fe97927-140d-4f94-a08d-7563840be090" xlink:to="loc_srt_RestatementDomain_3fe97927-140d-4f94-a08d-7563840be090_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_065bb260-6eb5-4e42-84b5-835fb8e52b8d" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RestatementAxis_3fe97927-140d-4f94-a08d-7563840be090" xlink:to="loc_srt_RestatementDomain_065bb260-6eb5-4e42-84b5-835fb8e52b8d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_68f6a95b-793a-41b7-b45e-1cd1034da097" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RestatementDomain_065bb260-6eb5-4e42-84b5-835fb8e52b8d" xlink:to="loc_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_68f6a95b-793a-41b7-b45e-1cd1034da097" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_2a383722-04f9-4d88-affb-4035eea50f1e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_NumberOfReportableSegments_2a383722-04f9-4d88-affb-4035eea50f1e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_1ddf5a81-99c8-4031-93da-e46ebb6fca49" xlink:href="tti-20250331.xsd#tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_1ddf5a81-99c8-4031-93da-e46ebb6fca49" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_23f1bb58-9622-42f0-90bd-ea7b71fdaa5c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_23f1bb58-9622-42f0-90bd-ea7b71fdaa5c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_e1e72683-bf44-42ae-9f26-2ef276ff9d94" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_EarningsPerShareBasic_e1e72683-bf44-42ae-9f26-2ef276ff9d94" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_530effe1-bc84-4ea0-9d46-ca7bc49268ec" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_EarningsPerShareDiluted_530effe1-bc84-4ea0-9d46-ca7bc49268ec" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_82e4c685-1540-49ba-9c96-ada9c3221420" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_82e4c685-1540-49ba-9c96-ada9c3221420" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_GrossBrineLeaseAcres_144ee57a-fb06-4acd-9cdd-560b23d0222a" xlink:href="tti-20250331.xsd#tti_GrossBrineLeaseAcres"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_tti_GrossBrineLeaseAcres_144ee57a-fb06-4acd-9cdd-560b23d0222a" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RecapitalizationCosts_bf8a6483-795f-4db7-9cf2-1fe6053e040b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RecapitalizationCosts"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_RecapitalizationCosts_bf8a6483-795f-4db7-9cf2-1fe6053e040b" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossRealized_f43d1d70-da4f-4956-8a2b-1c7170ddc10f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossRealized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossRealized_f43d1d70-da4f-4956-8a2b-1c7170ddc10f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_7773c362-295e-4a42-9b46-9923364b2ca4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_7773c362-295e-4a42-9b46-9923364b2ca4" xlink:type="arc" order="9"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#RevenueDisaggregationofRevenueDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_fafdd555-e8b8-4272-8577-ea091cb49c6b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_fafdd555-e8b8-4272-8577-ea091cb49c6b" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_063202f8-3186-474f-a668-7d4a971ae34b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_063202f8-3186-474f-a668-7d4a971ae34b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_063202f8-3186-474f-a668-7d4a971ae34b_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_063202f8-3186-474f-a668-7d4a971ae34b" xlink:to="loc_us-gaap_SegmentDomain_063202f8-3186-474f-a668-7d4a971ae34b_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_063202f8-3186-474f-a668-7d4a971ae34b" xlink:to="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_CompletionFluidsProductsDivisionMember_fa4ad46f-bdb7-4157-8e83-f522bf1faae7" xlink:href="tti-20250331.xsd#tti_CompletionFluidsProductsDivisionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:to="loc_tti_CompletionFluidsProductsDivisionMember_fa4ad46f-bdb7-4157-8e83-f522bf1faae7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_WaterFlowbackServicesMember_7119fd87-59e0-45eb-9818-c020006aa221" xlink:href="tti-20250331.xsd#tti_WaterFlowbackServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:to="loc_tti_WaterFlowbackServicesMember_7119fd87-59e0-45eb-9818-c020006aa221" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:to="loc_srt_StatementGeographicalAxis_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_StatementGeographicalAxis_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3" xlink:to="loc_srt_SegmentGeographicalDomain_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_StatementGeographicalAxis_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3" xlink:to="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_dc3206d7-828e-43d5-a781-e2fab5e5983c" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:to="loc_country_US_dc3206d7-828e-43d5-a781-e2fab5e5983c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_988880a8-d7a1-4127-aeb7-84554054e7ac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonUsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:to="loc_us-gaap_NonUsMember_988880a8-d7a1-4127-aeb7-84554054e7ac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_6ae86f09-4efc-4453-bf3d-ab80fa5b9bb9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_fafdd555-e8b8-4272-8577-ea091cb49c6b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_6ae86f09-4efc-4453-bf3d-ab80fa5b9bb9" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#InvestmentsScheduleofInvestmentsDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_da7a17fd-7703-43ca-8393-e16bdaf9f99c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_7ec5da33-5296-4302-ae2c-6fb0b46bb414" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_da7a17fd-7703-43ca-8393-e16bdaf9f99c" xlink:to="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_7ec5da33-5296-4302-ae2c-6fb0b46bb414" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_163b9711-793f-485c-9ce7-a52fcf501dec" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_7ec5da33-5296-4302-ae2c-6fb0b46bb414" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_163b9711-793f-485c-9ce7-a52fcf501dec" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_163b9711-793f-485c-9ce7-a52fcf501dec_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_163b9711-793f-485c-9ce7-a52fcf501dec" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_163b9711-793f-485c-9ce7-a52fcf501dec_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_163b9711-793f-485c-9ce7-a52fcf501dec" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_KodiakGasServicesInc.Member_fd9ab5c2-5110-4867-a4e2-4acb2662d541" xlink:href="tti-20250331.xsd#tti_KodiakGasServicesInc.Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:to="loc_tti_KodiakGasServicesInc.Member_fd9ab5c2-5110-4867-a4e2-4acb2662d541" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_StandardLithiumLtd.Member_8ba43936-57f8-4822-9d57-00e3ddc8d0cf" xlink:href="tti-20250331.xsd#tti_StandardLithiumLtd.Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:to="loc_tti_StandardLithiumLtd.Member_8ba43936-57f8-4822-9d57-00e3ddc8d0cf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InvestmentsOtherMember_85781254-f4ab-454b-b15c-7331b920ec8d" xlink:href="tti-20250331.xsd#tti_InvestmentsOtherMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:to="loc_tti_InvestmentsOtherMember_85781254-f4ab-454b-b15c-7331b920ec8d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNi_89ce8bd3-baeb-404c-9dc5-a3dd97cfba14" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesFvNi"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_da7a17fd-7703-43ca-8393-e16bdaf9f99c" xlink:to="loc_us-gaap_EquitySecuritiesFvNi_89ce8bd3-baeb-404c-9dc5-a3dd97cfba14" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#InvestmentsAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_0137b9bd-0ea8-43dc-a52d-0368ef1da6fc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:to="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_0137b9bd-0ea8-43dc-a52d-0368ef1da6fc" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bf1eab4b-8da8-4895-a666-cedafe90fde7" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_0137b9bd-0ea8-43dc-a52d-0368ef1da6fc" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bf1eab4b-8da8-4895-a666-cedafe90fde7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_bf1eab4b-8da8-4895-a666-cedafe90fde7_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bf1eab4b-8da8-4895-a666-cedafe90fde7" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_bf1eab4b-8da8-4895-a666-cedafe90fde7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_8cc785cc-9ad0-4a9b-b73e-2d52626092c7" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bf1eab4b-8da8-4895-a666-cedafe90fde7" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_8cc785cc-9ad0-4a9b-b73e-2d52626092c7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_KodiakGasServicesInc.Member_2e4c21e0-cfd0-461b-9af0-e499e428ebc5" xlink:href="tti-20250331.xsd#tti_KodiakGasServicesInc.Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_8cc785cc-9ad0-4a9b-b73e-2d52626092c7" xlink:to="loc_tti_KodiakGasServicesInc.Member_2e4c21e0-cfd0-461b-9af0-e499e428ebc5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi_e39b8761-3649-4d3e-8fcc-14246721b1da" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:to="loc_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi_e39b8761-3649-4d3e-8fcc-14246721b1da" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments_2b82bd76-1a6c-4ef7-bcd4-32e706893bc3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfInvestments"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:to="loc_us-gaap_GainLossOnSaleOfInvestments_2b82bd76-1a6c-4ef7-bcd4-32e706893bc3" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:to="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_19992911-c3c0-4852-a0c9-148e2ba30db5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_19992911-c3c0-4852-a0c9-148e2ba30db5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_19992911-c3c0-4852-a0c9-148e2ba30db5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_19992911-c3c0-4852-a0c9-148e2ba30db5" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_19992911-c3c0-4852-a0c9-148e2ba30db5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_994af406-e8b5-4d53-ae8b-9ebd3421ca6f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_19992911-c3c0-4852-a0c9-148e2ba30db5" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_994af406-e8b5-4d53-ae8b-9ebd3421ca6f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_a3d35394-b223-4e16-af42-d22900428644" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_994af406-e8b5-4d53-ae8b-9ebd3421ca6f" xlink:to="loc_us-gaap_SecuredDebtMember_a3d35394-b223-4e16-af42-d22900428644" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_3f66f160-6eea-4803-bcb7-2d2661aa340e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:to="loc_us-gaap_CreditFacilityAxis_3f66f160-6eea-4803-bcb7-2d2661aa340e" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_3f66f160-6eea-4803-bcb7-2d2661aa340e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_3f66f160-6eea-4803-bcb7-2d2661aa340e" xlink:to="loc_us-gaap_CreditFacilityDomain_3f66f160-6eea-4803-bcb7-2d2661aa340e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_b4067046-07d7-4610-aafb-f8c5c947452e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_3f66f160-6eea-4803-bcb7-2d2661aa340e" xlink:to="loc_us-gaap_CreditFacilityDomain_b4067046-07d7-4610-aafb-f8c5c947452e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TermLoanMember_8fd197b5-d4b8-4408-a483-c2892b803a1c" xlink:href="tti-20250331.xsd#tti_TermLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_b4067046-07d7-4610-aafb-f8c5c947452e" xlink:to="loc_tti_TermLoanMember_8fd197b5-d4b8-4408-a483-c2892b803a1c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_abcfe08a-c39b-463e-9902-eaea770ed2e3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_abcfe08a-c39b-463e-9902-eaea770ed2e3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet_6434d6ec-f355-40b3-9a85-1d448f9672e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet_6434d6ec-f355-40b3-9a85-1d448f9672e5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense_4e7e2c32-2cc8-4b58-9aaa-ea282c0f01d6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:to="loc_us-gaap_UnamortizedDebtIssuanceExpense_4e7e2c32-2cc8-4b58-9aaa-ea282c0f01d6" xlink:type="arc" order="2"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#LongTermDebtandOtherBorrowingsAdditionalInformationDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_d6268f2d-33c5-41a7-b271-c74f2b35d923" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_d6268f2d-33c5-41a7-b271-c74f2b35d923" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_d6268f2d-33c5-41a7-b271-c74f2b35d923_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_d6268f2d-33c5-41a7-b271-c74f2b35d923" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_d6268f2d-33c5-41a7-b271-c74f2b35d923_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_a20edbd9-080b-4289-af80-17a6dbd109bd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_d6268f2d-33c5-41a7-b271-c74f2b35d923" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_a20edbd9-080b-4289-af80-17a6dbd109bd" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_e0d4d6ca-b118-4fdc-a6da-13d8b461f3b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_a20edbd9-080b-4289-af80-17a6dbd109bd" xlink:to="loc_us-gaap_SecuredDebtMember_e0d4d6ca-b118-4fdc-a6da-13d8b461f3b5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_4d2f8758-4014-47c3-bd48-e4625bf26768" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_CreditFacilityAxis_4d2f8758-4014-47c3-bd48-e4625bf26768" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_4d2f8758-4014-47c3-bd48-e4625bf26768_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_4d2f8758-4014-47c3-bd48-e4625bf26768" xlink:to="loc_us-gaap_CreditFacilityDomain_4d2f8758-4014-47c3-bd48-e4625bf26768_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_4d2f8758-4014-47c3-bd48-e4625bf26768" xlink:to="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TermLoanMember_2c65b4b0-9342-4561-8c18-3ccbce68b139" xlink:href="tti-20250331.xsd#tti_TermLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_TermLoanMember_2c65b4b0-9342-4561-8c18-3ccbce68b139" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_AssetBasedCreditAgreementMember_1c211df2-3d59-4d6c-83ae-8adf03be4bce" xlink:href="tti-20250331.xsd#tti_AssetBasedCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_AssetBasedCreditAgreementMember_1c211df2-3d59-4d6c-83ae-8adf03be4bce" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SwedishCreditFacilityMember_934467e2-5788-47e4-be89-1c59b954749a" xlink:href="tti-20250331.xsd#tti_SwedishCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_SwedishCreditFacilityMember_934467e2-5788-47e4-be89-1c59b954749a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_FinlandCreditAgreementMember_6a8d2c2f-aad7-4114-b093-2be8c64c6b92" xlink:href="tti-20250331.xsd#tti_FinlandCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_FinlandCreditAgreementMember_6a8d2c2f-aad7-4114-b093-2be8c64c6b92" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_99bb9cc3-10bf-4dcf-a03e-45f07bde0548" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_DebtInstrumentAxis_99bb9cc3-10bf-4dcf-a03e-45f07bde0548" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_99bb9cc3-10bf-4dcf-a03e-45f07bde0548_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_99bb9cc3-10bf-4dcf-a03e-45f07bde0548" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_99bb9cc3-10bf-4dcf-a03e-45f07bde0548_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_99bb9cc3-10bf-4dcf-a03e-45f07bde0548" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DelayedDrawTermLoanDDTLMember_22d4bdae-a439-4484-9022-0d334436fc57" xlink:href="tti-20250331.xsd#tti_DelayedDrawTermLoanDDTLMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:to="loc_tti_DelayedDrawTermLoanDDTLMember_22d4bdae-a439-4484-9022-0d334436fc57" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_955dfc6b-7b53-4be7-b084-4041d7528ba8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:to="loc_us-gaap_LetterOfCreditMember_955dfc6b-7b53-4be7-b084-4041d7528ba8" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SinglineLoanMember_0b990dce-3894-429b-9378-9b0e0bbc3d95" xlink:href="tti-20250331.xsd#tti_SinglineLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:to="loc_tti_SinglineLoanMember_0b990dce-3894-429b-9378-9b0e0bbc3d95" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_741be860-ea10-4d8d-8b75-546fcc814ac4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_VariableRateAxis_741be860-ea10-4d8d-8b75-546fcc814ac4" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_741be860-ea10-4d8d-8b75-546fcc814ac4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_VariableRateAxis_741be860-ea10-4d8d-8b75-546fcc814ac4" xlink:to="loc_us-gaap_VariableRateDomain_741be860-ea10-4d8d-8b75-546fcc814ac4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_VariableRateAxis_741be860-ea10-4d8d-8b75-546fcc814ac4" xlink:to="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SecuredOvernightFinancingRateSOFRMember_6e33bbd3-3182-44a1-851c-7901067d4e52" xlink:href="tti-20250331.xsd#tti_SecuredOvernightFinancingRateSOFRMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_tti_SecuredOvernightFinancingRateSOFRMember_6e33bbd3-3182-44a1-851c-7901067d4e52" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_25039545-1b57-4bcf-9c89-2792af94af25" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BaseRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_us-gaap_BaseRateMember_25039545-1b57-4bcf-9c89-2792af94af25" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_FedFundsEffectiveRateMember_e9abf778-bc72-4f49-b550-c6713d31689d" xlink:href="tti-20250331.xsd#tti_FedFundsEffectiveRateMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_tti_FedFundsEffectiveRateMember_e9abf778-bc72-4f49-b550-c6713d31689d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember_5eb2e13c-b8be-4d28-9580-df24f3d48dd5" xlink:href="tti-20250331.xsd#tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember_5eb2e13c-b8be-4d28-9580-df24f3d48dd5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_40293ae7-4059-4ecd-90eb-3e40d7587202" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_srt_RangeAxis_40293ae7-4059-4ecd-90eb-3e40d7587202" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_40293ae7-4059-4ecd-90eb-3e40d7587202_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_40293ae7-4059-4ecd-90eb-3e40d7587202" xlink:to="loc_srt_RangeMember_40293ae7-4059-4ecd-90eb-3e40d7587202_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_40293ae7-4059-4ecd-90eb-3e40d7587202" xlink:to="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_d6517cf9-30f9-45c5-b2ee-8ed9a409aa38" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:to="loc_srt_MinimumMember_d6517cf9-30f9-45c5-b2ee-8ed9a409aa38" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_3587e8b3-cc34-4b82-956c-89d6f94b1c4f" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:to="loc_srt_MaximumMember_3587e8b3-cc34-4b82-956c-89d6f94b1c4f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0bb933e-7074-41ca-9059-aba28f3367e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0bb933e-7074-41ca-9059-aba28f3367e9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_e30b6d65-6a3b-4c10-9bb9-1e7a59d8fd00" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_e30b6d65-6a3b-4c10-9bb9-1e7a59d8fd00" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_300c294e-8f53-4aff-ac9f-2d345a460e37" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_300c294e-8f53-4aff-ac9f-2d345a460e37" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_68e2a617-6048-4658-ab2c-9d3e764cd683" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_68e2a617-6048-4658-ab2c-9d3e764cd683" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCovenantLeverageRatioMaximum_9db9ff89-5274-4e1e-99ab-fca1a50bee3a" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCovenantLeverageRatioMaximum"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_DebtInstrumentCovenantLeverageRatioMaximum_9db9ff89-5274-4e1e-99ab-fca1a50bee3a" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCovenantLiquidityMinimumAmount_54536aaf-15e8-4673-a134-17e63c848b0c" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCovenantLiquidityMinimumAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_DebtInstrumentCovenantLiquidityMinimumAmount_54536aaf-15e8-4673-a134-17e63c848b0c" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCredit_94c2e540-a2d5-4f78-871b-2d51eefd48b2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCredit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCredit_94c2e540-a2d5-4f78-871b-2d51eefd48b2" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount_34cf83f2-da3d-4afc-ae28-d5fc4e8bfa02" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LettersOfCreditOutstandingAmount_34cf83f2-da3d-4afc-ae28-d5fc4e8bfa02" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCostsNet_e219681e-825c-4692-bb67-7e4948095292" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherDeferredCostsNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_OtherDeferredCostsNet_e219681e-825c-4692-bb67-7e4948095292" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_LineOfCreditFacilityAdditionalBorrowingCapacity_31050262-87e5-4f8c-b073-73faddedd4b9" xlink:href="tti-20250331.xsd#tti_LineOfCreditFacilityAdditionalBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_LineOfCreditFacilityAdditionalBorrowingCapacity_31050262-87e5-4f8c-b073-73faddedd4b9" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_3d46189b-2694-4270-9a42-942c3635674a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_3d46189b-2694-4270-9a42-942c3635674a" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries_144aca94-d52b-4dd0-b3d9-b54e9bb3adf9" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries_144aca94-d52b-4dd0-b3d9-b54e9bb3adf9" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_05c0e931-b63a-4c78-9ded-53964fd1858f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_DebtInstrumentTerm_05c0e931-b63a-4c78-9ded-53964fd1858f" xlink:type="arc" order="12"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/CommitmentsandContingenciesDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#CommitmentsandContingenciesDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/CommitmentsandContingenciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_d6054711-246c-45b6-9b81-5c6892667115" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_d6054711-246c-45b6-9b81-5c6892667115" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_d6054711-246c-45b6-9b81-5c6892667115_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_d6054711-246c-45b6-9b81-5c6892667115" xlink:to="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_d6054711-246c-45b6-9b81-5c6892667115_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_d6054711-246c-45b6-9b81-5c6892667115" xlink:to="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoriesMember_0f3ae52e-35c0-4006-aac9-6d561cd03c85" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoriesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:to="loc_us-gaap_InventoriesMember_0f3ae52e-35c0-4006-aac9-6d561cd03c85" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalAdditionsMember_d4caf6fc-4c95-4546-9552-e094524d6e0e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalAdditionsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:to="loc_us-gaap_CapitalAdditionsMember_d4caf6fc-4c95-4546-9552-e094524d6e0e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_8363e65d-777c-481c-8d35-77a61d3f2c82" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_8363e65d-777c-481c-8d35-77a61d3f2c82" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_8363e65d-777c-481c-8d35-77a61d3f2c82_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_8363e65d-777c-481c-8d35-77a61d3f2c82" xlink:to="loc_us-gaap_SegmentDomain_8363e65d-777c-481c-8d35-77a61d3f2c82_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_8363e65d-777c-481c-8d35-77a61d3f2c82" xlink:to="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_CompletionFluidsProductsDivisionMember_8d5fb156-d62b-4c7c-a239-22a3b21f2827" xlink:href="tti-20250331.xsd#tti_CompletionFluidsProductsDivisionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:to="loc_tti_CompletionFluidsProductsDivisionMember_8d5fb156-d62b-4c7c-a239-22a3b21f2827" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_WaterFlowbackServicesMember_7dc5ff29-0d33-4248-9d7e-ab659fc5cb9b" xlink:href="tti-20250331.xsd#tti_WaterFlowbackServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:to="loc_tti_WaterFlowbackServicesMember_7dc5ff29-0d33-4248-9d7e-ab659fc5cb9b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_e027b6eb-33db-4843-8a3f-04bb9855d2c2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_e027b6eb-33db-4843-8a3f-04bb9855d2c2" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_e027b6eb-33db-4843-8a3f-04bb9855d2c2_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_e027b6eb-33db-4843-8a3f-04bb9855d2c2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_e027b6eb-33db-4843-8a3f-04bb9855d2c2_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_e027b6eb-33db-4843-8a3f-04bb9855d2c2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_1c6be7e0-4690-4238-bb6c-7353654f082a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_1c6be7e0-4690-4238-bb6c-7353654f082a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_4aa6e257-7ba7-4792-87ec-18b6c3e4a61f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_4aa6e257-7ba7-4792-87ec-18b6c3e4a61f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_OffshoreDivisionMember_7cd500ad-5be3-4404-baa6-ef4d89126965" xlink:href="tti-20250331.xsd#tti_OffshoreDivisionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:to="loc_tti_OffshoreDivisionMember_7cd500ad-5be3-4404-baa6-ef4d89126965" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_MaritechMember_1f60fae1-f917-4576-823d-9ab4565c4243" xlink:href="tti-20250331.xsd#tti_MaritechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:to="loc_tti_MaritechMember_1f60fae1-f917-4576-823d-9ab4565c4243" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_d6025d70-6a4e-4483-aa32-548bfee1f3f5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_PlanNameAxis_d6025d70-6a4e-4483-aa32-548bfee1f3f5" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_d6025d70-6a4e-4483-aa32-548bfee1f3f5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_d6025d70-6a4e-4483-aa32-548bfee1f3f5" xlink:to="loc_us-gaap_PlanNameDomain_d6025d70-6a4e-4483-aa32-548bfee1f3f5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_d6025d70-6a4e-4483-aa32-548bfee1f3f5" xlink:to="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InitialBondsMember_441ef124-fef3-44cf-b73e-9098a99377da" xlink:href="tti-20250331.xsd#tti_InitialBondsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:to="loc_tti_InitialBondsMember_441ef124-fef3-44cf-b73e-9098a99377da" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InterimReplacementBondsMember_8364a922-ae52-4783-9577-b3ec7038e7e3" xlink:href="tti-20250331.xsd#tti_InterimReplacementBondsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:to="loc_tti_InterimReplacementBondsMember_8364a922-ae52-4783-9577-b3ec7038e7e3" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis_881a9fc7-e2f7-4b08-8c99-f13ef03545f5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis_881a9fc7-e2f7-4b08-8c99-f13ef03545f5" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyNatureDomain_881a9fc7-e2f7-4b08-8c99-f13ef03545f5_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis_881a9fc7-e2f7-4b08-8c99-f13ef03545f5" xlink:to="loc_us-gaap_LossContingencyNatureDomain_881a9fc7-e2f7-4b08-8c99-f13ef03545f5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis_881a9fc7-e2f7-4b08-8c99-f13ef03545f5" xlink:to="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_13fc3719-e5e0-4aa5-a8e8-05dec0ef31ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_13fc3719-e5e0-4aa5-a8e8-05dec0ef31ce" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SuretyBondMember_bbfacfd8-4c60-4044-84ae-9b5b4f11c938" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SuretyBondMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:to="loc_us-gaap_SuretyBondMember_bbfacfd8-4c60-4044-84ae-9b5b4f11c938" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_dei_LegalEntityAxis_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6_default" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6" xlink:to="loc_dei_EntityDomain_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_36fda058-9f83-4678-a786-89b70730b498" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6" xlink:to="loc_dei_EntityDomain_36fda058-9f83-4678-a786-89b70730b498" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_MaritechMember_6a613648-8667-4e5b-aee9-5d979875e98d" xlink:href="tti-20250331.xsd#tti_MaritechMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_36fda058-9f83-4678-a786-89b70730b498" xlink:to="loc_tti_MaritechMember_6a613648-8667-4e5b-aee9-5d979875e98d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_edb13809-12f4-4abd-9886-fedb3299f78f" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_srt_RangeAxis_edb13809-12f4-4abd-9886-fedb3299f78f" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_edb13809-12f4-4abd-9886-fedb3299f78f_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_edb13809-12f4-4abd-9886-fedb3299f78f" xlink:to="loc_srt_RangeMember_edb13809-12f4-4abd-9886-fedb3299f78f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_edb13809-12f4-4abd-9886-fedb3299f78f" xlink:to="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_4880a126-5657-45f3-ad72-0c7540daed89" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:to="loc_srt_MinimumMember_4880a126-5657-45f3-ad72-0c7540daed89" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_766cf7f9-d175-4a1e-8473-32d3604cafe4" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:to="loc_srt_MaximumMember_766cf7f9-d175-4a1e-8473-32d3604cafe4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_94390747-b7b8-4eb6-bd7f-90e192e8d61a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_94390747-b7b8-4eb6-bd7f-90e192e8d61a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_4f276b45-1dec-4839-a239-3f917c7b97ac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_4f276b45-1dec-4839-a239-3f917c7b97ac" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_c16ab999-8baa-41bf-8a1c-e884bda0a9f9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_c16ab999-8baa-41bf-8a1c-e884bda0a9f9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_d3ff83e7-82e8-4c7d-9f73-6b65b3ba57c5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_d3ff83e7-82e8-4c7d-9f73-6b65b3ba57c5" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_e1c5ded2-a169-4502-8786-65909099b115" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_e1c5ded2-a169-4502-8786-65909099b115" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive_cc87d6e0-b67d-47ca-bb03-20fc3fb18c28" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive_cc87d6e0-b67d-47ca-bb03-20fc3fb18c28" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds_30db7cfd-2828-48e3-bb60-d0f93d4e4d79" xlink:href="tti-20250331.xsd#tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds_30db7cfd-2828-48e3-bb60-d0f93d4e4d79" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyEstimateOfPossibleLoss_6a58cca2-06dd-45d1-969e-b3dea2c1e422" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyEstimateOfPossibleLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_LossContingencyEstimateOfPossibleLoss_6a58cca2-06dd-45d1-969e-b3dea2c1e422" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyReceivableProceeds_bcbf20f8-0815-4097-aad0-638188e195a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyReceivableProceeds"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_LossContingencyReceivableProceeds_bcbf20f8-0815-4097-aad0-638188e195a4" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_e56991ef-f14d-4274-aad3-da75e22ef147" xlink:href="tti-20250331.xsd#tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_e56991ef-f14d-4274-aad3-da75e22ef147" xlink:type="arc" order="9"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#FairValueMeasurementsChangeinOurInvestmentsDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_87791635-c5f8-4201-a73c-1c5d69a870d3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_87791635-c5f8-4201-a73c-1c5d69a870d3" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_7ef5f071-eeec-4191-92f8-c0599d6c5488" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_7ef5f071-eeec-4191-92f8-c0599d6c5488" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_7ef5f071-eeec-4191-92f8-c0599d6c5488_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_7ef5f071-eeec-4191-92f8-c0599d6c5488" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_7ef5f071-eeec-4191-92f8-c0599d6c5488_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_7ef5f071-eeec-4191-92f8-c0599d6c5488" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_c6e349e3-df10-446b-a5b1-4038f078c21d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_c6e349e3-df10-446b-a5b1-4038f078c21d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_ac8f5e0f-722e-47f8-a022-0b1418436f26" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_ac8f5e0f-722e-47f8-a022-0b1418436f26" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_76322d50-e1ad-44e7-b740-165f8c181eb6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_76322d50-e1ad-44e7-b740-165f8c181eb6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByAssetClassAxis_e1761324-e514-4d91-88a1-b0fc11e5c0c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByAssetClassAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:to="loc_us-gaap_FairValueByAssetClassAxis_e1761324-e514-4d91-88a1-b0fc11e5c0c8" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_e1761324-e514-4d91-88a1-b0fc11e5c0c8_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_e1761324-e514-4d91-88a1-b0fc11e5c0c8" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_e1761324-e514-4d91-88a1-b0fc11e5c0c8_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_3a4dabe1-eeca-4f45-a307-3b2f879669b4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_e1761324-e514-4d91-88a1-b0fc11e5c0c8" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_3a4dabe1-eeca-4f45-a307-3b2f879669b4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_3a4dabe1-eeca-4f45-a307-3b2f879669b4" xlink:to="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesMember_7af27ca5-1d5b-4241-98d5-c1cf2acc55e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:to="loc_us-gaap_EquitySecuritiesMember_7af27ca5-1d5b-4241-98d5-c1cf2acc55e2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightsMember_3964319a-ec3c-4127-bce2-a6e302174cbf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RightsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:to="loc_us-gaap_RightsMember_3964319a-ec3c-4127-bce2-a6e302174cbf" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtSecuritiesMember_f80d714b-b853-4fa6-be46-0deed038f079" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleDebtSecuritiesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:to="loc_us-gaap_ConvertibleDebtSecuritiesMember_f80d714b-b853-4fa6-be46-0deed038f079" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_87791635-c5f8-4201-a73c-1c5d69a870d3" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_77ed2dae-7dcc-49b6-bff2-b381b901f6bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_77ed2dae-7dcc-49b6-bff2-b381b901f6bf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales_9b6cbc83-2433-40bc-9dd8-05f8632442ee" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales_9b6cbc83-2433-40bc-9dd8-05f8632442ee" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_46d116b9-536a-484d-9e22-dc3c133ddb2c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_46d116b9-536a-484d-9e22-dc3c133ddb2c" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss_478c5a99-2e60-4555-974d-3f1653d0e088" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss_478c5a99-2e60-4555-974d-3f1653d0e088" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_568d4d70-d7f9-4535-b8e6-8c363b82f5f2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_96c60555-fde4-4452-86cd-6414010aea82" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_96c60555-fde4-4452-86cd-6414010aea82" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_b2d027ad-8c9a-4b7a-8abb-2808b126f85e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_b2d027ad-8c9a-4b7a-8abb-2808b126f85e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b2d027ad-8c9a-4b7a-8abb-2808b126f85e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_b2d027ad-8c9a-4b7a-8abb-2808b126f85e" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_b2d027ad-8c9a-4b7a-8abb-2808b126f85e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_b2d027ad-8c9a-4b7a-8abb-2808b126f85e" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_69e8f4bd-0869-4dec-8d4d-89cd8415a760" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_69e8f4bd-0869-4dec-8d4d-89cd8415a760" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_5628c127-ba33-4227-ad8b-11893509dad0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_5628c127-ba33-4227-ad8b-11893509dad0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_fa8f7860-0e5b-4e76-90dc-9c5c0f3afa28" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_fa8f7860-0e5b-4e76-90dc-9c5c0f3afa28" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bd6f0c42-e283-4273-808d-fb0f64f516b7" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bd6f0c42-e283-4273-808d-fb0f64f516b7" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_bd6f0c42-e283-4273-808d-fb0f64f516b7_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bd6f0c42-e283-4273-808d-fb0f64f516b7" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_bd6f0c42-e283-4273-808d-fb0f64f516b7_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bd6f0c42-e283-4273-808d-fb0f64f516b7" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_KodiakGasServicesInc.Member_33545caa-25dd-47b5-adb7-c8b79f44a863" xlink:href="tti-20250331.xsd#tti_KodiakGasServicesInc.Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:to="loc_tti_KodiakGasServicesInc.Member_33545caa-25dd-47b5-adb7-c8b79f44a863" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_StandardLithiumLtd.Member_99812e0f-8548-489d-b57f-1b5b57011658" xlink:href="tti-20250331.xsd#tti_StandardLithiumLtd.Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:to="loc_tti_StandardLithiumLtd.Member_99812e0f-8548-489d-b57f-1b5b57011658" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InvestmentsOtherMember_de4604c0-e149-4af4-838b-1acd283449f2" xlink:href="tti-20250331.xsd#tti_InvestmentsOtherMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:to="loc_tti_InvestmentsOtherMember_de4604c0-e149-4af4-838b-1acd283449f2" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNi_76748e6e-de58-4e45-a383-cb63e86aee57" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesFvNi"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_96c60555-fde4-4452-86cd-6414010aea82" xlink:to="loc_us-gaap_EquitySecuritiesFvNi_76748e6e-de58-4e45-a383-cb63e86aee57" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#IndustrySegmentsScheduleofSegmentFinancialInformationDetails"/>
  <link:definitionLink xlink:role="http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_95f37cc0-1d10-4e15-a65a-c7a504709675" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:to="loc_srt_ConsolidationItemsAxis_95f37cc0-1d10-4e15-a65a-c7a504709675" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_95f37cc0-1d10-4e15-a65a-c7a504709675_default" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ConsolidationItemsAxis_95f37cc0-1d10-4e15-a65a-c7a504709675" xlink:to="loc_srt_ConsolidationItemsDomain_95f37cc0-1d10-4e15-a65a-c7a504709675_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ConsolidationItemsAxis_95f37cc0-1d10-4e15-a65a-c7a504709675" xlink:to="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_20f481c0-49e9-4be0-a963-50ceef845b0b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:to="loc_us-gaap_OperatingSegmentsMember_20f481c0-49e9-4be0-a963-50ceef845b0b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_e876b33c-f077-44d3-ac22-93bc9e0b7a8f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:to="loc_us-gaap_CorporateNonSegmentMember_e876b33c-f077-44d3-ac22-93bc9e0b7a8f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_25ccf139-98f5-4cac-b581-c863bf1a5915" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_25ccf139-98f5-4cac-b581-c863bf1a5915" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_25ccf139-98f5-4cac-b581-c863bf1a5915_default" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_25ccf139-98f5-4cac-b581-c863bf1a5915" xlink:to="loc_us-gaap_SegmentDomain_25ccf139-98f5-4cac-b581-c863bf1a5915_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_25ccf139-98f5-4cac-b581-c863bf1a5915" xlink:to="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_CompletionFluidsProductsDivisionMember_b5c53c7e-d5a9-4441-91b7-070ea8144bd6" xlink:href="tti-20250331.xsd#tti_CompletionFluidsProductsDivisionMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:to="loc_tti_CompletionFluidsProductsDivisionMember_b5c53c7e-d5a9-4441-91b7-070ea8144bd6" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_WaterFlowbackServicesMember_5ac72688-caef-40d4-9b1f-a0cf0576cd84" xlink:href="tti-20250331.xsd#tti_WaterFlowbackServicesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:to="loc_tti_WaterFlowbackServicesMember_5ac72688-caef-40d4-9b1f-a0cf0576cd84" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_55f62a8d-d7ad-4e3f-b346-8983900d41aa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_55f62a8d-d7ad-4e3f-b346-8983900d41aa" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_095c5e00-e26a-42e3-877e-2a98ca85c97b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_095c5e00-e26a-42e3-877e-2a98ca85c97b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DepreciationDepletionAmortizationAndAccretion_34d2d6fc-5ac9-45cc-9828-24716ddf99a0" xlink:href="tti-20250331.xsd#tti_DepreciationDepletionAmortizationAndAccretion"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_tti_DepreciationDepletionAmortizationAndAccretion_34d2d6fc-5ac9-45cc-9828-24716ddf99a0" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_da1c4782-d668-47e0-91f4-949837a485fb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_da1c4782-d668-47e0-91f4-949837a485fb" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_110fc758-bd63-4aa1-91c8-4fb010e532f7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_110fc758-bd63-4aa1-91c8-4fb010e532f7" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNet_52e42684-1081-436f-8120-02fcf5b1dc9a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_InterestIncomeExpenseNet_52e42684-1081-436f-8120-02fcf5b1dc9a" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_707a7404-9654-48e0-acf6-263c69c938c5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_707a7404-9654-48e0-acf6-263c69c938c5" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_9db85e48-14df-457a-8aea-95f5a84f1c19" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_9db85e48-14df-457a-8aea-95f5a84f1c19" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_53e8309e-b822-468f-9fe8-2577d05bffc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_53e8309e-b822-468f-9fe8-2577d05bffc0" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireProductiveAssets_78e11ee8-c0d8-413e-830c-96ae224bfbcb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireProductiveAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_PaymentsToAcquireProductiveAssets_78e11ee8-c0d8-413e-830c-96ae224bfbcb" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_da30dcb8-385a-484c-b0e5-3968bd0c864e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_Assets_da30dcb8-385a-484c-b0e5-3968bd0c864e" xlink:type="arc" order="10"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>9
<FILENAME>tti-20250331_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:31d188f3-e502-4f84-8e46-ddb4fc1f350a,g:37a5f24c-bfcc-4cbd-95ae-bb27d63efc4d-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_StockAppreciationRightsSARSMember_terseLabel_en-US" xlink:label="lab_us-gaap_StockAppreciationRightsSARSMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Appreciation Rights (SARs)</link:label>
    <link:label id="lab_us-gaap_StockAppreciationRightsSARSMember_label_en-US" xlink:label="lab_us-gaap_StockAppreciationRightsSARSMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Appreciation Rights (SARs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockAppreciationRightsSARSMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:to="lab_us-gaap_StockAppreciationRightsSARSMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateDomain_93058ef5-4611-4e42-8b8f-339171ac3a25_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:label id="lab_us-gaap_VariableRateDomain_label_en-US" xlink:label="lab_us-gaap_VariableRateDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateDomain" xlink:to="lab_us-gaap_VariableRateDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PayVsPerformanceDisclosureLineItems_label_en-US" xlink:label="lab_ecd_PayVsPerformanceDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PayVsPerformanceDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="lab_ecd_PayVsPerformanceDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_b05b6c8b-6e8f-4b43-8780-20db07aa0df0_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_InitialBondsMember_f7be1ca2-7707-4683-a5dc-fbe8d9f54502_terseLabel_en-US" xlink:label="lab_tti_InitialBondsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Initial Bonds</link:label>
    <link:label id="lab_tti_InitialBondsMember_label_en-US" xlink:label="lab_tti_InitialBondsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Initial Bonds [Member]</link:label>
    <link:label id="lab_tti_InitialBondsMember_documentation_en-US" xlink:label="lab_tti_InitialBondsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Initial Bonds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InitialBondsMember" xlink:href="tti-20250331.xsd#tti_InitialBondsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_InitialBondsMember" xlink:to="lab_tti_InitialBondsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_f8e30267-2e73-415a-9b83-81a99a6b07a1_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_485d56fc-d1c1-47a1-b394-0ab2df6d01ef_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changes in operating assets and liabilities:</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_UndrlygSecurityMktPriceChngPct_terseLabel_en-US" xlink:label="lab_ecd_UndrlygSecurityMktPriceChngPct" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Underlying Security Market Price Change</link:label>
    <link:label id="lab_ecd_UndrlygSecurityMktPriceChngPct_label_en-US" xlink:label="lab_ecd_UndrlygSecurityMktPriceChngPct" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Underlying Security Market Price Change, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_UndrlygSecurityMktPriceChngPct"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:to="lab_ecd_UndrlygSecurityMktPriceChngPct" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Award Types</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales_53f9445b-ab71-41ba-aadd-543c6a3edb2d_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Sale of investments</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Sales</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardGrantDateFairValue_terseLabel_en-US" xlink:label="lab_ecd_AwardGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value as of Grant Date</link:label>
    <link:label id="lab_ecd_AwardGrantDateFairValue_label_en-US" xlink:label="lab_ecd_AwardGrantDateFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Grant Date Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardGrantDateFairValue" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardGrantDateFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardGrantDateFairValue" xlink:to="lab_ecd_AwardGrantDateFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_EquityMethodInvesteeNameDomain_557062a0-4e58-4540-96eb-b787062dff7f_terseLabel_en-US" xlink:label="lab_srt_EquityMethodInvesteeNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment, Name [Domain]</link:label>
    <link:label id="lab_srt_EquityMethodInvesteeNameDomain_label_en-US" xlink:label="lab_srt_EquityMethodInvesteeNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_EquityMethodInvesteeNameDomain" xlink:to="lab_srt_EquityMethodInvesteeNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalAdditionsMember_ed6060d4-072f-47e8-9677-ddfe379f9946_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalAdditionsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capital Addition Purchase Commitments</link:label>
    <link:label id="lab_us-gaap_CapitalAdditionsMember_label_en-US" xlink:label="lab_us-gaap_CapitalAdditionsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capital Addition Purchase Commitments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalAdditionsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalAdditionsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalAdditionsMember" xlink:to="lab_us-gaap_CapitalAdditionsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_143cb4cc-a905-4763-a599-7b61293e72f2_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-Term Debt and Other Borrowings</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock" xlink:to="lab_us-gaap_DebtDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_d6aab69c-43e4-4976-9fc0-f8ef0ad85b38_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_fbbc3e62-3ea0-4b20-b8c6-c1ebc19f359a_terseLabel_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Effect of exchange rate changes on cash</link:label>
    <link:label id="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_d994cb25-cd31-4345-a599-fa2223720d57_verboseLabel_en-US" xlink:label="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Decommissioning expense accrued</link:label>
    <link:label id="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_a9a2926a-da91-4169-9700-17a92f0fbb6b_terseLabel_en-US" xlink:label="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued liability related to obligation</link:label>
    <link:label id="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_label_en-US" xlink:label="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Decommissioning Liability Expense</link:label>
    <link:label id="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_documentation_en-US" xlink:label="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Decommissioning Liability Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" xlink:href="tti-20250331.xsd#tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" xlink:to="lab_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_ac87f31a-21d2-4efc-8a82-4cee0b9a4edb_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:to="lab_us-gaap_DeferredIncomeTaxLiabilitiesNet" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MnpiDiscTimedForCompValFlag_terseLabel_en-US" xlink:label="lab_ecd_MnpiDiscTimedForCompValFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">MNPI Disclosure Timed for Compensation Value</link:label>
    <link:label id="lab_ecd_MnpiDiscTimedForCompValFlag_label_en-US" xlink:label="lab_ecd_MnpiDiscTimedForCompValFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">MNPI Disclosure Timed for Compensation Value [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MnpiDiscTimedForCompValFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:to="lab_ecd_MnpiDiscTimedForCompValFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_b83c14b7-ff70-4a97-8ddf-496deb122598_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingAbstract_label_en-US" xlink:label="lab_us-gaap_SegmentReportingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingAbstract" xlink:to="lab_us-gaap_SegmentReportingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_26a2d6de-d1ea-40be-a3af-e0e31cc652f6_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reclassification between Level 2 and Level 3 fair value</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers out of Level 3</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RestatementDateAxis_terseLabel_en-US" xlink:label="lab_ecd_RestatementDateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement Determination Date:</link:label>
    <link:label id="lab_ecd_RestatementDateAxis_label_en-US" xlink:label="lab_ecd_RestatementDateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Determination Date [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDateAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RestatementDateAxis" xlink:to="lab_ecd_RestatementDateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_a170504a-42c5-4f45-9b2f-a3ee93919bcb_terseLabel_en-US" xlink:label="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment, Name [Axis]</link:label>
    <link:label id="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_label_en-US" xlink:label="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:to="lab_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_fc7674ae-02b8-4455-bb20-3eb999423060_periodStartLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_1ddb2890-ce72-448c-9a23-18232d2a856b_periodEndLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:to="lab_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_5a97cbd7-6beb-4c94-b35e-52179effdb8c_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and contingencies (Note 6)</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTradingPoliciesProcLineItems_label_en-US" xlink:label="lab_ecd_InsiderTradingPoliciesProcLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingPoliciesProcLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:to="lab_ecd_InsiderTradingPoliciesProcLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConstructionInProgressGross_f37283c8-9992-414a-90a6-96362797107a_terseLabel_en-US" xlink:label="lab_us-gaap_ConstructionInProgressGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Construction in progress</link:label>
    <link:label id="lab_us-gaap_ConstructionInProgressGross_label_en-US" xlink:label="lab_us-gaap_ConstructionInProgressGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Construction in Progress, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConstructionInProgressGross" xlink:to="lab_us-gaap_ConstructionInProgressGross" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_Rule10b51ArrTrmntdFlag_terseLabel_en-US" xlink:label="lab_ecd_Rule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Terminated</link:label>
    <link:label id="lab_ecd_Rule10b51ArrTrmntdFlag_label_en-US" xlink:label="lab_ecd_Rule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Terminated [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrTrmntdFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:to="lab_ecd_Rule10b51ArrTrmntdFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_InterimReplacementBondsMember_5f086856-56c3-466f-a194-2cec3996549c_terseLabel_en-US" xlink:label="lab_tti_InterimReplacementBondsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interim Replacement Bonds</link:label>
    <link:label id="lab_tti_InterimReplacementBondsMember_label_en-US" xlink:label="lab_tti_InterimReplacementBondsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interim Replacement Bonds [Member]</link:label>
    <link:label id="lab_tti_InterimReplacementBondsMember_documentation_en-US" xlink:label="lab_tti_InterimReplacementBondsMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Interim Replacement Bonds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InterimReplacementBondsMember" xlink:href="tti-20250331.xsd#tti_InterimReplacementBondsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_InterimReplacementBondsMember" xlink:to="lab_tti_InterimReplacementBondsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_7c221054-2b16-4b64-9f23-edac278a6ef2_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueLineItems_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems" xlink:to="lab_us-gaap_DisaggregationOfRevenueLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock_terseLabel_en-US" xlink:label="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement does not require Recovery</link:label>
    <link:label id="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock_label_en-US" xlink:label="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Does Not Require Recovery [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDoesNotRequireRecoveryTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:to="lab_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive_ffff6edc-7091-4094-a0ce-f7c9a0ceed2f_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase obligation, due over five years</link:label>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive_label_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation, Due in Rolling Year Five</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive" xlink:to="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_StatementGeographicalAxis_b6001262-1acb-451a-bfd0-24c4d9202685_terseLabel_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:label id="lab_srt_StatementGeographicalAxis_label_en-US" xlink:label="lab_srt_StatementGeographicalAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_StatementGeographicalAxis" xlink:to="lab_srt_StatementGeographicalAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss_3fc1750a-b515-4819-ada7-c9d172d1f518_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrealized gain (loss)</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Asset, Recurring Basis, Still Held, Unrealized Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_dbd4498c-4106-4174-914f-a8b3b74c42a9_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_4631511c-8de9-42ab-83c2-61f28eadc2f1_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Recurring and Nonrecurring [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_ed55041f-1b7d-4dc0-beeb-827ea45ebfa2_terseLabel_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Impairments and other charges</link:label>
    <link:label id="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_label_en-US" xlink:label="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Impairment, Long-Lived Asset, Held-for-Use</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:to="lab_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_b38a40f8-ebe9-4960-9cf4-bdf8a6842010_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income attributable to TETRA stockholders (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_f3847f43-609e-40d7-b676-c9d48c63875a_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Increase to net income per share attributable to TETRA stockholders, diluted (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoTotalCompAmt_terseLabel_en-US" xlink:label="lab_ecd_PeoTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO Total Compensation Amount</link:label>
    <link:label id="lab_ecd_PeoTotalCompAmt_label_en-US" xlink:label="lab_ecd_PeoTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO Total Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoTotalCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoTotalCompAmt" xlink:to="lab_ecd_PeoTotalCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockValue_76ad122e-ba6f-4248-a96a-204ee42026fc_negatedLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Treasury stock, at cost; 3,138,675 shares held at March&#160;31, 2025 and December&#160;31, 2024</link:label>
    <link:label id="lab_us-gaap_TreasuryStockValue_label_en-US" xlink:label="lab_us-gaap_TreasuryStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockValue" xlink:to="lab_us-gaap_TreasuryStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_8d6ca2b3-bf7b-4b3f-b356-ec4d867a1d83_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trade accounts receivable, net of allowances of $537 in 2025 and $626 in 2024</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TradingArrByIndTable_terseLabel_en-US" xlink:label="lab_ecd_TradingArrByIndTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Arrangements, by Individual</link:label>
    <link:label id="lab_ecd_TradingArrByIndTable_label_en-US" xlink:label="lab_ecd_TradingArrByIndTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangements, by Individual [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrByIndTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrByIndTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TradingArrByIndTable" xlink:to="lab_ecd_TradingArrByIndTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_5723d3c1-ba05-401b-b247-72654e4caa2a_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">(Level 3)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockCommonShares_4eda04b0-6700-4c9f-8b9a-643b3c87965d_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury stock, shares held (in shares)</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonShares_label_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Common, Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockCommonShares" xlink:to="lab_us-gaap_TreasuryStockCommonShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsNoncurrentAbstract_3e7587ca-1bf4-44f9-9cb6-9f0781d72119_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsNoncurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other assets:</link:label>
    <link:label id="lab_us-gaap_AssetsNoncurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsNoncurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Noncurrent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsNoncurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsNoncurrentAbstract" xlink:to="lab_us-gaap_AssetsNoncurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_e84ce4cf-a2a3-4e2a-9769-0b7d944518d9_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LettersOfCreditOutstandingAmount_61fd1a17-27ba-48d3-9140-fa78007054b7_terseLabel_en-US" xlink:label="lab_us-gaap_LettersOfCreditOutstandingAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Letters of credit outstanding</link:label>
    <link:label id="lab_us-gaap_LettersOfCreditOutstandingAmount_label_en-US" xlink:label="lab_us-gaap_LettersOfCreditOutstandingAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Letters of Credit Outstanding, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LettersOfCreditOutstandingAmount" xlink:to="lab_us-gaap_LettersOfCreditOutstandingAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt_terseLabel_en-US" xlink:label="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Compensation Actually Paid Amount</link:label>
    <link:label id="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt_label_en-US" xlink:label="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Compensation Actually Paid Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgCompActuallyPaidAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:to="lab_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_c3ca01d5-c8e8-434b-8908-a8a489e5274a_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income attributable to TETRA stockholders</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_1367502a-2b00-4b2e-84be-3440d295b641_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income (loss), retained deficit</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_127dfe12-b20b-43aa-bd37-91c6cad18c39_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase obligation, remainder of 2025</link:label>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation, to be Paid, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" xlink:to="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_23853ff4-af87-4cb1-a0cc-27be374c8fc6_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_8d2d54b7-d32f-4c71-ae88-878b1c984daf_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract" xlink:to="lab_us-gaap_FairValueDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_5df6397d-2a86-40d6-b436-f02e335a8b6a_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign Currency Translation</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Foreign Currency Transactions and Translations Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:to="lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ChangedPeerGroupFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_ChangedPeerGroupFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Changed Peer Group, Footnote</link:label>
    <link:label id="lab_ecd_ChangedPeerGroupFnTextBlock_label_en-US" xlink:label="lab_ecd_ChangedPeerGroupFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Changed Peer Group, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ChangedPeerGroupFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:to="lab_ecd_ChangedPeerGroupFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CoSelectedMeasureName_terseLabel_en-US" xlink:label="lab_ecd_CoSelectedMeasureName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Company Selected Measure Name</link:label>
    <link:label id="lab_ecd_CoSelectedMeasureName_label_en-US" xlink:label="lab_ecd_CoSelectedMeasureName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Company Selected Measure Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CoSelectedMeasureName" xlink:to="lab_ecd_CoSelectedMeasureName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_90020505-5263-4a09-b5e9-f0c9e23543fe_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of revenues:</link:label>
    <link:label id="lab_us-gaap_CostOfRevenueAbstract_label_en-US" xlink:label="lab_us-gaap_CostOfRevenueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Revenue [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfRevenueAbstract" xlink:to="lab_us-gaap_CostOfRevenueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_d3e80f06-647d-4027-b0ef-2183b04f622b_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">LIABILITIES AND EQUITY</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_e8349af8-dace-4607-bc4e-f0ca96025bce_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Reclassification of non-cash cumulative foreign currency translation adjustment loss to net income from dissolution of Canadian subsidiary</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_03ca7de1-0b6b-4e09-9d1c-d370926b05f9_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Cumulative foreign currency translation adjustment loss</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Reclassification Adjustment from AOCI, Realized upon Sale or Liquidation, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_79adb907-234d-4cad-aa08-b7eea8f231f0_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Domain]</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_e24936d8-175c-48f3-b532-42f934c2b766_terseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_2de32091-bcb5-4d5c-9680-0b230dac7c4f_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unearned income balances</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerLiability_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerLiability" xlink:to="lab_us-gaap_ContractWithCustomerLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_4257f230-8367-4aa7-9596-33e091b0ecc2_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cost of product sales and services</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock_9508df2d-ad07-478f-90f8-0d82cad86eb7_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Investments</link:label>
    <link:label id="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock_label_en-US" xlink:label="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments in and Advances to Affiliates [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock" xlink:to="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ExecutiveCategoryAxis_terseLabel_en-US" xlink:label="lab_ecd_ExecutiveCategoryAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Executive Category:</link:label>
    <link:label id="lab_ecd_ExecutiveCategoryAxis_label_en-US" xlink:label="lab_ecd_ExecutiveCategoryAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Executive Category [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ExecutiveCategoryAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ExecutiveCategoryAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ExecutiveCategoryAxis" xlink:to="lab_ecd_ExecutiveCategoryAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_fd6cc420-9844-442c-aefe-0aa2fb097a47_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of changes in Investments</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_DebtInstrumentCovenantLeverageRatioMaximum_184519cd-8915-4c20-ab2d-16664ca0d2c8_terseLabel_en-US" xlink:label="lab_tti_DebtInstrumentCovenantLeverageRatioMaximum" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum leverage ratio</link:label>
    <link:label id="lab_tti_DebtInstrumentCovenantLeverageRatioMaximum_label_en-US" xlink:label="lab_tti_DebtInstrumentCovenantLeverageRatioMaximum" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Covenant, Leverage Ratio, Maximum</link:label>
    <link:label id="lab_tti_DebtInstrumentCovenantLeverageRatioMaximum_documentation_en-US" xlink:label="lab_tti_DebtInstrumentCovenantLeverageRatioMaximum" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Debt Instrument, Covenant, Leverage Ratio, Maximum</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCovenantLeverageRatioMaximum" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCovenantLeverageRatioMaximum"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_DebtInstrumentCovenantLeverageRatioMaximum" xlink:to="lab_tti_DebtInstrumentCovenantLeverageRatioMaximum" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_0aab290b-b5eb-4c2c-8212-59a12a6dc4a1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Weighted Average Number of Share</link:label>
    <link:label id="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Weighted Average Number of Shares [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_931d115e-c18b-4c47-8f26-22002d5aa068_terseLabel_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Organization, Basis of Presentation, and Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap_SignificantAccountingPoliciesTextBlock_label_en-US" xlink:label="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Significant Accounting Policies [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:to="lab_us-gaap_SignificantAccountingPoliciesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_4f652ae0-0071-4e29-a21c-6aef4949580d_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">(Level 1)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MeasureName_terseLabel_en-US" xlink:label="lab_ecd_MeasureName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_MeasureName_label_en-US" xlink:label="lab_ecd_MeasureName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measure Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MeasureName" xlink:to="lab_ecd_MeasureName" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryIndName_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryIndName_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryIndName" xlink:to="lab_ecd_ForgoneRecoveryIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_dc2fd7c1-9cdb-49ac-a5ee-566daf71726b_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase obligation, 2028</link:label>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_label_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary" xlink:to="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember_ed45cf4b-c7bf-42ab-b324-c768985f744f_terseLabel_en-US" xlink:label="lab_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrealized Gain (Loss) on Investment</link:label>
    <link:label id="lab_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember_label_en-US" xlink:label="lab_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">AOCI, Gain (Loss), Debt Securities, Available-for-Sale, with Allowance for Credit Loss, Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember" xlink:to="lab_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_4df716b9-4365-41f0-8a6d-315541fb3de5_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_Additional402vDisclosureTextBlock_terseLabel_en-US" xlink:label="lab_ecd_Additional402vDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional 402(v) Disclosure</link:label>
    <link:label id="lab_ecd_Additional402vDisclosureTextBlock_label_en-US" xlink:label="lab_ecd_Additional402vDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional 402(v) Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Additional402vDisclosureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Additional402vDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_Additional402vDisclosureTextBlock" xlink:to="lab_ecd_Additional402vDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardUndrlygSecuritiesAmt_terseLabel_en-US" xlink:label="lab_ecd_AwardUndrlygSecuritiesAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Underlying Securities</link:label>
    <link:label id="lab_ecd_AwardUndrlygSecuritiesAmt_label_en-US" xlink:label="lab_ecd_AwardUndrlygSecuritiesAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Underlying Securities Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardUndrlygSecuritiesAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:to="lab_ecd_AwardUndrlygSecuritiesAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_f96aeca8-f1ef-41f8-a413-3365b827a7ef_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_b5285242-827f-475d-b7d6-bd7d76541bd8_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_6ba0e98c-4078-4194-82e6-72b2bd43de2b_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RecoveryOfErrCompDisclosureLineItems_label_en-US" xlink:label="lab_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Recovery of Erroneously Awarded Compensation Disclosure [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RecoveryOfErrCompDisclosureLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="lab_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LetterOfCreditMember_4b07eaf9-90cd-42b0-b7f5-db912422d09c_terseLabel_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Letter of Credit</link:label>
    <link:label id="lab_us-gaap_LetterOfCreditMember_label_en-US" xlink:label="lab_us-gaap_LetterOfCreditMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Letter of Credit [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LetterOfCreditMember" xlink:to="lab_us-gaap_LetterOfCreditMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_86c8b8ac-ee17-4679-94f5-079fcbd40165_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tax related to translation adjustment</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">OCI, Foreign Currency Transaction and Translation Gain (Loss), Arising During Period, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_4adbc66f-8651-4563-8c66-0ffd09297801_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossRealized_7f7e2620-e17f-4740-99db-1e8cdd188a55_terseLabel_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossRealized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency exchange gains (losses)</link:label>
    <link:label id="lab_us-gaap_ForeignCurrencyTransactionGainLossRealized_label_en-US" xlink:label="lab_us-gaap_ForeignCurrencyTransactionGainLossRealized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Realized Gain (Loss), Foreign Currency Transaction, before Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossRealized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossRealized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ForeignCurrencyTransactionGainLossRealized" xlink:to="lab_us-gaap_ForeignCurrencyTransactionGainLossRealized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_8ef09ecf-d2f8-4b9a-9b15-dc9c308da56d_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted cash</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_dbefba0b-d7fb-41e1-985b-eacefe7410e1_verboseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Restricted cash at end of period</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_3b8b1f18-1f2b-4d77-8edf-658e6a23a151_netLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Restricted cash (less than)</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Cash and Cash Equivalents, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Violation of Home Country Law, Amount</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Violation of Home Country Law, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:to="lab_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_eda2b368-9fc3-4cca-82fa-9adfe96bfe06_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Term</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTerm" xlink:to="lab_us-gaap_DebtInstrumentTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_98f9fe6f-072f-4089-9d83-726dea17d29f_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfDebtIssuanceCosts_317c6086-ac72-4847-beff-432988307eb0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Debt issuance costs</link:label>
    <link:label id="lab_us-gaap_PaymentsOfDebtIssuanceCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments of Debt Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:to="lab_us-gaap_PaymentsOfDebtIssuanceCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_DepreciationDepletionAmortizationAndAccretion_96b9699d-a684-4fd9-b3af-af9f1313f183_terseLabel_en-US" xlink:label="lab_tti_DepreciationDepletionAmortizationAndAccretion" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation, amortization and accretion</link:label>
    <link:label id="lab_tti_DepreciationDepletionAmortizationAndAccretion_label_en-US" xlink:label="lab_tti_DepreciationDepletionAmortizationAndAccretion" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion, Amortization And Accretion</link:label>
    <link:label id="lab_tti_DepreciationDepletionAmortizationAndAccretion_documentation_en-US" xlink:label="lab_tti_DepreciationDepletionAmortizationAndAccretion" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The aggregate net amount of depreciation, depletion, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by (used in) operations using the indirect method.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DepreciationDepletionAmortizationAndAccretion" xlink:href="tti-20250331.xsd#tti_DepreciationDepletionAmortizationAndAccretion"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_DepreciationDepletionAmortizationAndAccretion" xlink:to="lab_tti_DepreciationDepletionAmortizationAndAccretion" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_5b7831a6-c3b6-48e4-8995-423f605b8c97_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Assumed exercise of equity awards (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted, Adjustment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainLossOnSaleOfInvestments_8f895d33-11b5-47f0-9f0d-9e9cf2b7a9f2_terseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net gain on sale of investment</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfInvestments_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Sale of Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfInvestments" xlink:to="lab_us-gaap_GainLossOnSaleOfInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_KodiakGasServicesInc.Member_320d02f5-e7ae-47a0-ba7d-bd4b1f6b9249_terseLabel_en-US" xlink:label="lab_tti_KodiakGasServicesInc.Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Kodiak</link:label>
    <link:label id="lab_tti_KodiakGasServicesInc.Member_label_en-US" xlink:label="lab_tti_KodiakGasServicesInc.Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Kodiak Gas Services, Inc. [Member]</link:label>
    <link:label id="lab_tti_KodiakGasServicesInc.Member_documentation_en-US" xlink:label="lab_tti_KodiakGasServicesInc.Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Kodiak Gas Services, Inc.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_KodiakGasServicesInc.Member" xlink:href="tti-20250331.xsd#tti_KodiakGasServicesInc.Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_KodiakGasServicesInc.Member" xlink:to="lab_tti_KodiakGasServicesInc.Member" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductsAndServicesDomain_b4d14780-d063-4eb1-93f8-811815ef0987_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OtherPerfMeasureAmt_terseLabel_en-US" xlink:label="lab_ecd_OtherPerfMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other Performance Measure, Amount</link:label>
    <link:label id="lab_ecd_OtherPerfMeasureAmt_label_en-US" xlink:label="lab_ecd_OtherPerfMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Performance Measure, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OtherPerfMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OtherPerfMeasureAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OtherPerfMeasureAmt" xlink:to="lab_ecd_OtherPerfMeasureAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrSecuritiesAggAvailAmt_terseLabel_en-US" xlink:label="lab_ecd_TrdArrSecuritiesAggAvailAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Available</link:label>
    <link:label id="lab_ecd_TrdArrSecuritiesAggAvailAmt_label_en-US" xlink:label="lab_ecd_TrdArrSecuritiesAggAvailAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement, Securities Aggregate Available Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrSecuritiesAggAvailAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:to="lab_ecd_TrdArrSecuritiesAggAvailAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_1f436b8c-0a9c-4c20-8a3a-1178915e0abf_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNetCurrent_bc32b89d-e9e6-4033-a4bb-4679d9b75993_terseLabel_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNetCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract assets</link:label>
    <link:label id="lab_us-gaap_ContractWithCustomerAssetNetCurrent_label_en-US" xlink:label="lab_us-gaap_ContractWithCustomerAssetNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract with Customer, Asset, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ContractWithCustomerAssetNetCurrent" xlink:to="lab_us-gaap_ContractWithCustomerAssetNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_f1d59c11-0a2e-434d-9475-83fe02f45f99_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Unrealized gain on investment</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_8cdacaa4-f15a-4257-8333-ec23466fb78c_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other comprehensive income</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Available-for-Sale Securities Adjustment, Net of Tax, Portion Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:to="lab_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_c981cd51-0413-425b-9257-1edad4f86cb6_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock_terseLabel_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Not Adopted</link:label>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock_label_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Not Adopted [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:to="lab_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Type</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameDomain_5166e2fe-6141-4f4e-92cb-f2cd63baebd8_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanNameDomain_label_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentQuarterlyReport_2e5a7792-5f3f-4612-8b0b-8d8b41519e21_terseLabel_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:label id="lab_dei_DocumentQuarterlyReport_label_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentQuarterlyReport" xlink:to="lab_dei_DocumentQuarterlyReport" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_NoTradingSymbolFlag_c98a9f4d-1c8a-4c36-99f6-d267fede7f48_terseLabel_en-US" xlink:label="lab_dei_NoTradingSymbolFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">No Trading Symbol Flag</link:label>
    <link:label id="lab_dei_NoTradingSymbolFlag_label_en-US" xlink:label="lab_dei_NoTradingSymbolFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">No Trading Symbol Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_NoTradingSymbolFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_NoTradingSymbolFlag" xlink:to="lab_dei_NoTradingSymbolFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestExpense_9ced196f-60ee-468a-89c9-2bc2f97c1815_terseLabel_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest expense, net</link:label>
    <link:label id="lab_us-gaap_InterestExpense_label_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid_bc184339-d806-4204-a6dd-e7543e2cfca0_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued capital expenditures</link:label>
    <link:label id="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid_label_en-US" xlink:label="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Capital Expenditures Incurred but Not yet Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:to="lab_us-gaap_CapitalExpendituresIncurredButNotYetPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88e05f53-981c-4ce5-aaec-17ba231eb8dd_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt_bcceea30-e4d9-47db-bb42-e3a36a7e46c6_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Loss on debt extinguishment</link:label>
    <link:label id="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt_label_en-US" xlink:label="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Extinguishment of Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:to="lab_us-gaap_GainsLossesOnExtinguishmentOfDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_b3db0c5d-79be-44dd-80ec-e95693ba0283_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TradingArrAxis_terseLabel_en-US" xlink:label="lab_ecd_TradingArrAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trading Arrangement:</link:label>
    <link:label id="lab_ecd_TradingArrAxis_label_en-US" xlink:label="lab_ecd_TradingArrAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TradingArrAxis" xlink:to="lab_ecd_TradingArrAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UseOfEstimates_ce3d5bb0-9738-4cec-94f0-d6ebbfc4fd20_terseLabel_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Use of Estimates</link:label>
    <link:label id="lab_us-gaap_UseOfEstimates_label_en-US" xlink:label="lab_us-gaap_UseOfEstimates" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Use of Estimates, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UseOfEstimates" xlink:to="lab_us-gaap_UseOfEstimates" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoActuallyPaidCompAmt_terseLabel_en-US" xlink:label="lab_ecd_PeoActuallyPaidCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO Actually Paid Compensation Amount</link:label>
    <link:label id="lab_ecd_PeoActuallyPaidCompAmt_label_en-US" xlink:label="lab_ecd_PeoActuallyPaidCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO Actually Paid Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoActuallyPaidCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoActuallyPaidCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoActuallyPaidCompAmt" xlink:to="lab_ecd_PeoActuallyPaidCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_d8835ff9-db3f-4cdc-9b88-4fbf0bd537d2_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term Debt, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeDomain" xlink:to="lab_us-gaap_LongtermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_245f207c-7a0a-4b58-9c66-22c71b264dfc_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingenciesTable_eb0d3987-1e4a-43d5-8a6c-0af6e7478681_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingenciesTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss Contingencies [Table]</link:label>
    <link:label id="lab_us-gaap_LossContingenciesTable_label_en-US" xlink:label="lab_us-gaap_LossContingenciesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss Contingencies [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingenciesTable" xlink:to="lab_us-gaap_LossContingenciesTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_c7bfa452-aa6b-4488-bd0c-521e0e1207ac_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Operating lease liabilities, current portion</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrentAndNoncurrent_9ad09366-8437-4858-86a4-8359db3b0df7_terseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trade accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:to="lab_us-gaap_AccountsPayableCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_7f07a2de-88d0-4799-bf54-b0bbf0f40c1b_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_c30c9007-df30-4ec5-b5b5-4f4feec627e2_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">New Accounting Pronouncements, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_RestatementDeterminationDate_terseLabel_en-US" xlink:label="lab_ecd_RestatementDeterminationDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restatement Determination Date</link:label>
    <link:label id="lab_ecd_RestatementDeterminationDate_label_en-US" xlink:label="lab_ecd_RestatementDeterminationDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restatement Determination Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDeterminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDeterminationDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_RestatementDeterminationDate" xlink:to="lab_ecd_RestatementDeterminationDate" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_Rule10b51ArrAdoptedFlag_terseLabel_en-US" xlink:label="lab_ecd_Rule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Adopted</link:label>
    <link:label id="lab_ecd_Rule10b51ArrAdoptedFlag_label_en-US" xlink:label="lab_ecd_Rule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Rule 10b5-1 Arrangement Adopted [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrAdoptedFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:to="lab_ecd_Rule10b51ArrAdoptedFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_5f8b5e6d-1e5d-4c7d-9b1b-34479936bdb2_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash, cash equivalents and restricted cash at beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_7e96f5a1-eb28-4065-baf5-eb6ee342292f_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash, cash equivalents and restricted cash at end of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_f6f1f29b-f179-4cf1-92fe-df8711e3e55a_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total cash, cash equivalents and restricted cash at end of period shown in the consolidated statements of cash flows</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByAssetClassAxis_24eb4722-c7ae-45b4-b6e2-690f62a38ac9_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByAssetClassAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asset Class [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByAssetClassAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByAssetClassAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset Class [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByAssetClassAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByAssetClassAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByAssetClassAxis" xlink:to="lab_us-gaap_FairValueByAssetClassAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_SwedishCreditFacilityMember_cd2e22cd-e002-45db-9143-7c404fc44fc6_terseLabel_en-US" xlink:label="lab_tti_SwedishCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Swedish Credit Facility</link:label>
    <link:label id="lab_tti_SwedishCreditFacilityMember_label_en-US" xlink:label="lab_tti_SwedishCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Swedish Credit Facility [Member]</link:label>
    <link:label id="lab_tti_SwedishCreditFacilityMember_documentation_en-US" xlink:label="lab_tti_SwedishCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Swedish Credit Facility</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SwedishCreditFacilityMember" xlink:href="tti-20250331.xsd#tti_SwedishCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_SwedishCreditFacilityMember" xlink:to="lab_tti_SwedishCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_b34ab46a-0cfc-4980-a6fc-5291e377900a_terseLabel_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Patents, trademarks, and other intangible assets, accumulated amortization</link:label>
    <link:label id="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_label_en-US" xlink:label="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finite-Lived Intangible Assets, Accumulated Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:to="lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock_terseLabel_en-US" xlink:label="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Stock Price or TSR Estimation Method</link:label>
    <link:label id="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock_label_en-US" xlink:label="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stock Price or TSR Estimation Method [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_StkPrcOrTsrEstimationMethodTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:to="lab_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_6dd39e5a-d44b-47d0-a7e0-96932f371d7b_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding Reconciliation [Abstract]</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding Reconciliation [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_11cf87f6-a164-4a14-a350-2e9c6d4b2b2c_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares issued (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingencyReceivableProceeds_5d88f9bd-929f-4451-b4e5-6e98142d0b78_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingencyReceivableProceeds" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Bond proceeds</link:label>
    <link:label id="lab_us-gaap_LossContingencyReceivableProceeds_label_en-US" xlink:label="lab_us-gaap_LossContingencyReceivableProceeds" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss Contingency, Receivable, Proceeds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyReceivableProceeds" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyReceivableProceeds"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingencyReceivableProceeds" xlink:to="lab_us-gaap_LossContingencyReceivableProceeds" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_73cb0183-47c5-4aa3-89ed-237da3bfba70_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from sale of investments</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale, Maturity and Collection of Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:to="lab_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_4b8d5cab-a996-4711-ba34-0f48c00c89e2_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_5400735b-8862-46f6-8c55-ea01611eb75a_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_FinlandCreditAgreementMember_aa6ec872-31ce-4330-9fb3-807c9ce38cff_terseLabel_en-US" xlink:label="lab_tti_FinlandCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finland Credit Agreement</link:label>
    <link:label id="lab_tti_FinlandCreditAgreementMember_label_en-US" xlink:label="lab_tti_FinlandCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finland Credit Agreement [Member]</link:label>
    <link:label id="lab_tti_FinlandCreditAgreementMember_documentation_en-US" xlink:label="lab_tti_FinlandCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Finland Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_FinlandCreditAgreementMember" xlink:href="tti-20250331.xsd#tti_FinlandCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_FinlandCreditAgreementMember" xlink:to="lab_tti_FinlandCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_01e397ad-fe21-4fcf-a184-2d1770867f5a_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accumulated other comprehensive loss</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employee Stock Option</link:label>
    <link:label id="lab_us-gaap_EmployeeStockOptionMember_label_en-US" xlink:label="lab_us-gaap_EmployeeStockOptionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Option [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeStockOptionMember" xlink:to="lab_us-gaap_EmployeeStockOptionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedTranslationAdjustmentMember_5c1cba26-d968-4627-8419-8d1ae0415bf6_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Currency Translation</link:label>
    <link:label id="lab_us-gaap_AccumulatedTranslationAdjustmentMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Foreign Currency Adjustment Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedTranslationAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:to="lab_us-gaap_AccumulatedTranslationAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsPayableLineItems_32902ec4-208a-4f41-aec2-3e221f369f6c_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsPayableLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dividends Payable [Line Items]</link:label>
    <link:label id="lab_us-gaap_DividendsPayableLineItems_label_en-US" xlink:label="lab_us-gaap_DividendsPayableLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dividends Payable [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsPayableLineItems" xlink:to="lab_us-gaap_DividendsPayableLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostsAndExpenses_782e2b80-2008-4e45-8a0f-f4a221882e0d_totalLabel_en-US" xlink:label="lab_us-gaap_CostsAndExpenses" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total cost of revenues</link:label>
    <link:label id="lab_us-gaap_CostsAndExpenses_label_en-US" xlink:label="lab_us-gaap_CostsAndExpenses" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Costs and Expenses</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostsAndExpenses" xlink:to="lab_us-gaap_CostsAndExpenses" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_4d5433a7-3829-4646-8937-1fd4e0af9c02_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_fe6e33b6-3f2e-4d57-a6de-4e9ade19c667_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Comprehensive income (loss) attributable to TETRA stockholders</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNetAbstract_a53d815b-8b0c-4b3b-ab12-a2c51f936f20_terseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Property, plant and equipment:</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNetAbstract_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Net [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNetAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNetAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_f031ad88-ade1-42bf-af01-9e819faf2d8b_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TabularListTableTextBlock_terseLabel_en-US" xlink:label="lab_ecd_TabularListTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Tabular List, Table</link:label>
    <link:label id="lab_ecd_TabularListTableTextBlock_label_en-US" xlink:label="lab_ecd_TabularListTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Tabular List [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TabularListTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TabularListTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TabularListTableTextBlock" xlink:to="lab_ecd_TabularListTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_c3aefcb2-fa53-4839-ab08-97cd7f09ff82_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNoncashIncomeExpense_91ba7916-2e78-4eed-8d42-b468736f078b_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other non-cash credits</link:label>
    <link:label id="lab_us-gaap_OtherNoncashIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNoncashIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Noncash Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNoncashIncomeExpense" xlink:to="lab_us-gaap_OtherNoncashIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TaxesPayableCurrent_cadbd79d-60ef-4e1c-99e4-45a79329a1d1_terseLabel_en-US" xlink:label="lab_us-gaap_TaxesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued taxes</link:label>
    <link:label id="lab_us-gaap_TaxesPayableCurrent_label_en-US" xlink:label="lab_us-gaap_TaxesPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Taxes Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TaxesPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TaxesPayableCurrent" xlink:to="lab_us-gaap_TaxesPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_613d1cf2-cda6-40a3-b60e-01e77270061c_terseLabel_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trade accounts receivable, allowances for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_label_en-US" xlink:label="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoriesMember_f3b5d485-be26-46bd-8fb3-367d4bc9acbf_terseLabel_en-US" xlink:label="lab_us-gaap_InventoriesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Supply Agreements</link:label>
    <link:label id="lab_us-gaap_InventoriesMember_label_en-US" xlink:label="lab_us-gaap_InventoriesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventories [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoriesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoriesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoriesMember" xlink:to="lab_us-gaap_InventoriesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableRateAxis_1a8d2985-12ce-4e88-9945-f84883381a31_terseLabel_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:label id="lab_us-gaap_VariableRateAxis_label_en-US" xlink:label="lab_us-gaap_VariableRateAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableRateAxis" xlink:to="lab_us-gaap_VariableRateAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_3bfebf6f-5247-449c-b81b-428f6940ec36_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Trade accounts payable and accrued expenses</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Accounts Payable and Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_a2a793f7-2e41-454c-a8b3-19f3a6d566d0_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_c4960d24-68bd-49ab-aa12-5a378cbe1918_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Revenues from product sales and services</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_07d31966-1e67-43b0-b686-72363d0b41c1_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_e4a87a54-2a19-42a8-aacd-36876fb0cc02_netLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer, Including Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_cf2384e9-993b-4e6d-bce8-21def4bff626_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationsPolicyTextBlock_d3c5653b-deef-47fb-a680-54f7caae11a6_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Discontinued Operations</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationsPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operations, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsPolicyTextBlock" xlink:to="lab_us-gaap_DiscontinuedOperationsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag_terseLabel_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Adopted</link:label>
    <link:label id="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag_label_en-US" xlink:label="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Policies and Procedures Adopted [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcAdoptedFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:to="lab_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingencyNatureDomain_f18c2461-fe16-4952-9c03-975516d4b04d_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingencyNatureDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss Contingency, Nature [Domain]</link:label>
    <link:label id="lab_us-gaap_LossContingencyNatureDomain_label_en-US" xlink:label="lab_us-gaap_LossContingencyNatureDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss Contingency, Nature [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyNatureDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingencyNatureDomain" xlink:to="lab_us-gaap_LossContingencyNatureDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AggtErrCompNotYetDeterminedTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Not Yet Determined</link:label>
    <link:label id="lab_ecd_AggtErrCompNotYetDeterminedTextBlock_label_en-US" xlink:label="lab_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Not Yet Determined [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompNotYetDeterminedTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:to="lab_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_bc63c595-50bf-47ff-b522-38b7f64ad65b_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Segments</link:label>
    <link:label id="lab_us-gaap_OperatingSegmentsMember_label_en-US" xlink:label="lab_us-gaap_OperatingSegmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Segments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingSegmentsMember" xlink:to="lab_us-gaap_OperatingSegmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Expense of Enforcement, Amount</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Expense of Enforcement, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:to="lab_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DividendsPayableTable_3df1f06b-ebde-4c82-a6b5-3174fdd8af04_terseLabel_en-US" xlink:label="lab_us-gaap_DividendsPayableTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Dividends Payable [Table]</link:label>
    <link:label id="lab_us-gaap_DividendsPayableTable_label_en-US" xlink:label="lab_us-gaap_DividendsPayableTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Dividends Payable [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsPayableTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DividendsPayableTable" xlink:to="lab_us-gaap_DividendsPayableTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_2490c4fa-a7b3-4d32-991a-b73b933eeb10_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Diluted net income per common share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDilutedAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract" xlink:to="lab_us-gaap_EarningsPerShareDilutedAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_1a9d9333-954d-449f-9397-b4b070ef7dc4_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments in and Advances to Affiliates [Table]</link:label>
    <link:label id="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_label_en-US" xlink:label="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments in and Advances to Affiliates [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable" xlink:to="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_ee4f7b43-d4fc-4f42-9c26-d602f226f174_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_b8f4ae24-266d-403a-991d-81188adebdc8_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_d27acb64-41e3-46db-8cfe-5f96698a1214_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_label_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_70417ff7-6949-4300-b4dc-6ff73a93315d_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy_a620d069-9f86-424a-90db-33e09671b091_terseLabel_en-US" xlink:label="lab_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Presentation</link:label>
    <link:label id="lab_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy_label_en-US" xlink:label="lab_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation, Subsidiaries or Other Investments, Consolidated Entities, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy" xlink:to="lab_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_714d314e-f207-4914-ab0c-be50d461de8b_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest_013780d9-ed55-4912-9447-0bbbe323fcaa_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Taxes related to foreign currency translation adjustment from continuing operations</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_935b1f49-b057-4e33-9530-d564a36d942b_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTable_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable" xlink:to="lab_us-gaap_DisaggregationOfRevenueTable" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_OffshoreDivisionMember_b7225712-33b2-4e54-a3d2-acff0f5671d7_terseLabel_en-US" xlink:label="lab_tti_OffshoreDivisionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Offshore Division</link:label>
    <link:label id="lab_tti_OffshoreDivisionMember_label_en-US" xlink:label="lab_tti_OffshoreDivisionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Offshore Division [Member]</link:label>
    <link:label id="lab_tti_OffshoreDivisionMember_documentation_en-US" xlink:label="lab_tti_OffshoreDivisionMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Offshore Division [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_OffshoreDivisionMember" xlink:href="tti-20250331.xsd#tti_OffshoreDivisionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_OffshoreDivisionMember" xlink:to="lab_tti_OffshoreDivisionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TotalShareholderRtnAmt_terseLabel_en-US" xlink:label="lab_ecd_TotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Amount</link:label>
    <link:label id="lab_ecd_TotalShareholderRtnAmt_label_en-US" xlink:label="lab_ecd_TotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TotalShareholderRtnAmt" xlink:to="lab_ecd_TotalShareholderRtnAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_93710836-27fa-4f68-8e70-01cd5458046e_terseLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of cash, cash equivalents and restricted cash to the consolidated balance sheets</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductMember_c71d81f3-690c-477e-ae26-9b54c4c0040a_terseLabel_en-US" xlink:label="lab_us-gaap_ProductMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product sales</link:label>
    <link:label id="lab_us-gaap_ProductMember_label_en-US" xlink:label="lab_us-gaap_ProductMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductMember" xlink:to="lab_us-gaap_ProductMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_e705d147-bbe2-4dba-9be6-5b6b40135fa6_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Common Stock Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToPeoCompFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AdjToPeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment To PEO Compensation, Footnote</link:label>
    <link:label id="lab_ecd_AdjToPeoCompFnTextBlock_label_en-US" xlink:label="lab_ecd_AdjToPeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment To PEO Compensation, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToPeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToPeoCompFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToPeoCompFnTextBlock" xlink:to="lab_ecd_AdjToPeoCompFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_52279917-6e50-41c6-a883-e0b76af77d0c_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDomain_0991920c-dd55-48ca-88ae-0aa759167ca1_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:label id="lab_us-gaap_SegmentDomain_label_en-US" xlink:label="lab_us-gaap_SegmentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDomain" xlink:to="lab_us-gaap_SegmentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_f7bc8326-8adc-4991-b619-bf10d0ee49ba_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsDomain_3adfc5bc-4b9a-4d4b-b66b-6b81ef8ae8c3_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:label id="lab_srt_ConsolidationItemsDomain_label_en-US" xlink:label="lab_srt_ConsolidationItemsDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsDomain" xlink:to="lab_srt_ConsolidationItemsDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_9f6ef647-de68-468d-a69f-09f6cc3bfe87_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MeasureAxis_terseLabel_en-US" xlink:label="lab_ecd_MeasureAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Measure:</link:label>
    <link:label id="lab_ecd_MeasureAxis_label_en-US" xlink:label="lab_ecd_MeasureAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Measure [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MeasureAxis" xlink:to="lab_ecd_MeasureAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_d44db066-fd0a-463e-b69a-534ef8a701ef_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OutstandingRecoveryIndName_terseLabel_en-US" xlink:label="lab_ecd_OutstandingRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_OutstandingRecoveryIndName_label_en-US" xlink:label="lab_ecd_OutstandingRecoveryIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Recovery, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OutstandingRecoveryIndName" xlink:to="lab_ecd_OutstandingRecoveryIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_ab76d3e3-de74-4e29-aa59-73349b1e5a0a_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_57c562ee-3219-4deb-b742-ea76c3829ade_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_DebtInstrumentCovenantLiquidityMinimumAmount_dae9ba84-a2fc-44dd-87e7-7809316f4012_terseLabel_en-US" xlink:label="lab_tti_DebtInstrumentCovenantLiquidityMinimumAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum liquidity amount</link:label>
    <link:label id="lab_tti_DebtInstrumentCovenantLiquidityMinimumAmount_label_en-US" xlink:label="lab_tti_DebtInstrumentCovenantLiquidityMinimumAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Covenant, Liquidity, Minimum Amount</link:label>
    <link:label id="lab_tti_DebtInstrumentCovenantLiquidityMinimumAmount_documentation_en-US" xlink:label="lab_tti_DebtInstrumentCovenantLiquidityMinimumAmount" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Debt Instrument, Covenant, Liquidity, Minimum Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCovenantLiquidityMinimumAmount" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCovenantLiquidityMinimumAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_DebtInstrumentCovenantLiquidityMinimumAmount" xlink:to="lab_tti_DebtInstrumentCovenantLiquidityMinimumAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_64610bb8-6e47-4ee3-ae7f-f7c60550fd01_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Total Shareholder Return</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Total Shareholder Return [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_3cfa75a9-8d5d-42af-98bb-005d75875921_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_601998ef-12e6-4b60-a448-d32d33fb9e5b_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_label_en-US" xlink:label="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:to="lab_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAbstract_f30546c6-7cee-4485-b90a-364192cb8de7_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basic net income per common share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasicAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasicAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract" xlink:to="lab_us-gaap_EarningsPerShareBasicAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsMember_c32af246-b118-4c1b-9a5e-f04c8e112a6f_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments</link:label>
    <link:label id="lab_us-gaap_InvestmentsMember_label_en-US" xlink:label="lab_us-gaap_InvestmentsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsMember" xlink:to="lab_us-gaap_InvestmentsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoMember_terseLabel_en-US" xlink:label="lab_ecd_PeoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO</link:label>
    <link:label id="lab_ecd_PeoMember_label_en-US" xlink:label="lab_ecd_PeoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoMember" xlink:to="lab_ecd_PeoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingencyEstimateOfPossibleLoss_e95cc2bd-3131-4b96-bdc2-9502652cfe7d_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingencyEstimateOfPossibleLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Estimated amount of potential loss liability</link:label>
    <link:label id="lab_us-gaap_LossContingencyEstimateOfPossibleLoss_label_en-US" xlink:label="lab_us-gaap_LossContingencyEstimateOfPossibleLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss Contingency, Estimate of Possible Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyEstimateOfPossibleLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyEstimateOfPossibleLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingencyEstimateOfPossibleLoss" xlink:to="lab_us-gaap_LossContingencyEstimateOfPossibleLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityOther_6072ed03-e83e-4704-9055-15cd35c3529a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityOther" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityOther_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityOther" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Stockholders' Equity, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityOther" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityOther"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityOther" xlink:to="lab_us-gaap_StockholdersEquityOther" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_WaterFlowbackServicesMember_d7b93b67-8d79-4827-8a13-ef18ede1c93c_verboseLabel_en-US" xlink:label="lab_tti_WaterFlowbackServicesMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Water &amp; Flowback Services</link:label>
    <link:label id="lab_tti_WaterFlowbackServicesMember_68f6e521-8c66-4cdd-bba2-89e0ffc37b2d_terseLabel_en-US" xlink:label="lab_tti_WaterFlowbackServicesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Water &amp; Flowback Services Division</link:label>
    <link:label id="lab_tti_WaterFlowbackServicesMember_label_en-US" xlink:label="lab_tti_WaterFlowbackServicesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Water &amp; Flowback Services [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_WaterFlowbackServicesMember" xlink:href="tti-20250331.xsd#tti_WaterFlowbackServicesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_WaterFlowbackServicesMember" xlink:to="lab_tti_WaterFlowbackServicesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherDeferredCostsNet_a45ceb5d-4cd5-43d0-91da-fdcb85b1d6bf_terseLabel_en-US" xlink:label="lab_us-gaap_OtherDeferredCostsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred financing costs</link:label>
    <link:label id="lab_us-gaap_OtherDeferredCostsNet_label_en-US" xlink:label="lab_us-gaap_OtherDeferredCostsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Deferred Costs, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCostsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherDeferredCostsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherDeferredCostsNet" xlink:to="lab_us-gaap_OtherDeferredCostsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_9cb22b6b-478e-4a7b-b54d-f8f30737d17a_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asset Class [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset Class [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_bfa3b457-3b66-4b93-9d03-14aefeb07099_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, par value (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_1ca5c45e-5ae5-4381-87b4-7ea48101d8f4_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ClassOfStockDomain_028911c8-c157-406b-932a-51781b59541a_terseLabel_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:label id="lab_us-gaap_ClassOfStockDomain_label_en-US" xlink:label="lab_us-gaap_ClassOfStockDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ClassOfStockDomain" xlink:to="lab_us-gaap_ClassOfStockDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquitySecuritiesFvNi_0a877c99-ed40-42d0-a844-a18ad896d445_verboseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesFvNi" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Investments</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesFvNi_ee3b4e5a-349d-40cc-9a11-dfbb258142dc_terseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesFvNi" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total investments</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesFvNi_label_en-US" xlink:label="lab_us-gaap_EquitySecuritiesFvNi" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Securities, FV-NI, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNi" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesFvNi"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquitySecuritiesFvNi" xlink:to="lab_us-gaap_EquitySecuritiesFvNi" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_ChemicalPlants_95ff3be6-8a65-42b6-a029-09dd33aa6754_terseLabel_en-US" xlink:label="lab_tti_ChemicalPlants" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Chemical plants</link:label>
    <link:label id="lab_tti_ChemicalPlants_label_en-US" xlink:label="lab_tti_ChemicalPlants" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Chemical Plants</link:label>
    <link:label id="lab_tti_ChemicalPlants_documentation_en-US" xlink:label="lab_tti_ChemicalPlants" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Long-lived depreciable assets used for the processing, transmission, or distribution of materials that is not electricity, steam, fossil fuel, nuclear, natural gas, or water, and other long-term capitalized assets related to property, plant and equipment not otherwise previously categorized.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_ChemicalPlants" xlink:href="tti-20250331.xsd#tti_ChemicalPlants"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_ChemicalPlants" xlink:to="lab_tti_ChemicalPlants" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_e519d971-abb2-4c27-a7db-1a8950ac0e90_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Inventory</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_f8b2f317-2853-4fc1-8f4a-20c5a592dcf1_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OutstandingAggtErrCompAmt_terseLabel_en-US" xlink:label="lab_ecd_OutstandingAggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding Aggregate Erroneous Compensation Amount</link:label>
    <link:label id="lab_ecd_OutstandingAggtErrCompAmt_label_en-US" xlink:label="lab_ecd_OutstandingAggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Aggregate Erroneous Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingAggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingAggtErrCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OutstandingAggtErrCompAmt" xlink:to="lab_ecd_OutstandingAggtErrCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityAxis_f3a193ec-ed10-45de-88d6-3027c1b6fc5e_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis" xlink:to="lab_us-gaap_CreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ServiceMember_6d1a75be-be07-4a3f-bc59-6bd5708fde62_terseLabel_en-US" xlink:label="lab_us-gaap_ServiceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Services</link:label>
    <link:label id="lab_us-gaap_ServiceMember_label_en-US" xlink:label="lab_us-gaap_ServiceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Service [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ServiceMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ServiceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ServiceMember" xlink:to="lab_us-gaap_ServiceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock_terseLabel_en-US" xlink:label="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Vs Peer Group</link:label>
    <link:label id="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock_label_en-US" xlink:label="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total Shareholder Return Vs Peer Group [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnVsPeerGroupTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:to="lab_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_bc795a72-a6fa-4cf5-b66b-478c14ea206a_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AggtErrCompAmt_terseLabel_en-US" xlink:label="lab_ecd_AggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Amount</link:label>
    <link:label id="lab_ecd_AggtErrCompAmt_label_en-US" xlink:label="lab_ecd_AggtErrCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Aggregate Erroneous Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AggtErrCompAmt" xlink:to="lab_ecd_AggtErrCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllExecutiveCategoriesMember_terseLabel_en-US" xlink:label="lab_ecd_AllExecutiveCategoriesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Executive Categories</link:label>
    <link:label id="lab_ecd_AllExecutiveCategoriesMember_label_en-US" xlink:label="lab_ecd_AllExecutiveCategoriesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Executive Categories [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllExecutiveCategoriesMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllExecutiveCategoriesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllExecutiveCategoriesMember" xlink:to="lab_ecd_AllExecutiveCategoriesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_d63e5a96-3fb0-4a2f-a2d0-fe7bb61d8f7c_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase obligation, 2026</link:label>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_label_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary" xlink:to="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_cbd4c5b7-c719-4592-8713-a0369772c085_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Cash and Cash Equivalents [Axis]</link:label>
    <link:label id="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_label_en-US" xlink:label="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Cash and Cash Equivalents [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis" xlink:to="lab_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonRule10b51ArrAdoptedFlag_terseLabel_en-US" xlink:label="lab_ecd_NonRule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Adopted</link:label>
    <link:label id="lab_ecd_NonRule10b51ArrAdoptedFlag_label_en-US" xlink:label="lab_ecd_NonRule10b51ArrAdoptedFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Adopted [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrAdoptedFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:to="lab_ecd_NonRule10b51ArrAdoptedFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameAxis_eab2a8ae-5746-498e-9318-30f6c7de83d9_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:label id="lab_us-gaap_PlanNameAxis_label_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_08f44666-423e-4d07-bd65-880dc7074510_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_8b4c778e-e487-4e5b-9e9b-eb152b45c8b6_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of reporting segments</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_c6e5275e-924f-4641-a435-7ccb1e34fd6b_verboseLabel_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Number of reportable segments</link:label>
    <link:label id="lab_us-gaap_NumberOfReportableSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfReportableSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number of Reportable Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfReportableSegments" xlink:to="lab_us-gaap_NumberOfReportableSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_2f30ce55-ea36-4762-98aa-d537068458ae_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_SinglineLoanMember_3b130fb7-0f09-413d-8201-c4697a4d1666_terseLabel_en-US" xlink:label="lab_tti_SinglineLoanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Singline Loan</link:label>
    <link:label id="lab_tti_SinglineLoanMember_label_en-US" xlink:label="lab_tti_SinglineLoanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Singline Loan [Member]</link:label>
    <link:label id="lab_tti_SinglineLoanMember_documentation_en-US" xlink:label="lab_tti_SinglineLoanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Singline Loan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SinglineLoanMember" xlink:href="tti-20250331.xsd#tti_SinglineLoanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_SinglineLoanMember" xlink:to="lab_tti_SinglineLoanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_06a1af59-1dd9-4c42-ae18-d6842b1ccb69_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, par value 0.01 per share; 250,000,000 shares authorized at March&#160;31, 2025 and December&#160;31, 2024; 136,207,612 shares issued at March&#160;31, 2025 and 134,951,081 shares issued at December&#160;31, 2024</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_label_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_46c02e8c-c811-4830-95ad-205541fcd4f1_terseLabel_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">General and administrative expense</link:label>
    <link:label id="lab_us-gaap_GeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_GeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_a4fe3a46-0175-4449-b52e-c779c6665003_totalLabel_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Purchase obligation</link:label>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_label_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount" xlink:to="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentDiscontinuedOperationsMember_344d926d-bfae-4d0f-a6ba-4f47578653ac_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentDiscontinuedOperationsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Discontinued Operations</link:label>
    <link:label id="lab_us-gaap_SegmentDiscontinuedOperationsMember_label_en-US" xlink:label="lab_us-gaap_SegmentDiscontinuedOperationsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operations [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentDiscontinuedOperationsMember" xlink:to="lab_us-gaap_SegmentDiscontinuedOperationsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures, Table</link:label>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock_label_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:to="lab_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_99fd5749-4ec6-4470-b576-a857fe1d46be_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_3fc061b0-632b-4a7d-a7a6-1409b66f29a0_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Payments on financing lease obligations</link:label>
    <link:label id="lab_us-gaap_FinanceLeasePrincipalPayments_label_en-US" xlink:label="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finance Lease, Principal Payments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FinanceLeasePrincipalPayments" xlink:to="lab_us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetImpairmentCharges_a7e404ff-13e7-4806-ab34-3dca913df443_terseLabel_en-US" xlink:label="lab_us-gaap_AssetImpairmentCharges" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Impairments and other charges</link:label>
    <link:label id="lab_us-gaap_AssetImpairmentCharges_label_en-US" xlink:label="lab_us-gaap_AssetImpairmentCharges" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset Impairment Charges</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetImpairmentCharges" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetImpairmentCharges" xlink:to="lab_us-gaap_AssetImpairmentCharges" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquitySecuritiesMember_4dc2c81b-a151-46df-8c8f-f477d598910f_terseLabel_en-US" xlink:label="lab_us-gaap_EquitySecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Securities</link:label>
    <link:label id="lab_us-gaap_EquitySecuritiesMember_label_en-US" xlink:label="lab_us-gaap_EquitySecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquitySecuritiesMember" xlink:to="lab_us-gaap_EquitySecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_e4cea0f4-5452-4a4b-83f3-d1b9f335eab0_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllIndividualsMember_terseLabel_en-US" xlink:label="lab_ecd_AllIndividualsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Individuals</link:label>
    <link:label id="lab_ecd_AllIndividualsMember_label_en-US" xlink:label="lab_ecd_AllIndividualsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Individuals [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllIndividualsMember" xlink:to="lab_ecd_AllIndividualsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_591807fc-d47a-4715-a9dd-daafb8ba9f77_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other (income) expense, net</link:label>
    <link:label id="lab_us-gaap_OtherNonoperatingIncomeExpense_label_en-US" xlink:label="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Nonoperating Income (Expense)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherNonoperatingIncomeExpense" xlink:to="lab_us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_b31d22f1-258f-4c76-81c9-b62097c041c3_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_AutomobilesAndTrucks_b8f9cb7a-c0de-4f90-9603-8b7df77d7398_terseLabel_en-US" xlink:label="lab_tti_AutomobilesAndTrucks" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Automobiles and trucks</link:label>
    <link:label id="lab_tti_AutomobilesAndTrucks_label_en-US" xlink:label="lab_tti_AutomobilesAndTrucks" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Automobiles And Trucks</link:label>
    <link:label id="lab_tti_AutomobilesAndTrucks_documentation_en-US" xlink:label="lab_tti_AutomobilesAndTrucks" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Long lived, depreciable assets used primarily for road transportation, including large vehicles primarily used for transporting cargo and vehicles that are used primarily for transporting people.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_AutomobilesAndTrucks" xlink:href="tti-20250331.xsd#tti_AutomobilesAndTrucks"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_AutomobilesAndTrucks" xlink:to="lab_tti_AutomobilesAndTrucks" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonPeoNeoAvgTotalCompAmt_terseLabel_en-US" xlink:label="lab_ecd_NonPeoNeoAvgTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Total Compensation Amount</link:label>
    <link:label id="lab_ecd_NonPeoNeoAvgTotalCompAmt_label_en-US" xlink:label="lab_ecd_NonPeoNeoAvgTotalCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-PEO NEO Average Total Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgTotalCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:to="lab_ecd_NonPeoNeoAvgTotalCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_0fecd6cd-d996-42b6-927a-98c396e225ae_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_90bc6746-f81f-4b43-8c66-f728f88842cb_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeoName_terseLabel_en-US" xlink:label="lab_ecd_PeoName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">PEO Name</link:label>
    <link:label id="lab_ecd_PeoName_label_en-US" xlink:label="lab_ecd_PeoName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">PEO Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeoName" xlink:to="lab_ecd_PeoName" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds_ea93265e-357a-4e4b-89c4-483415e21348_terseLabel_en-US" xlink:label="lab_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Aggregate amount of performance bonds</link:label>
    <link:label id="lab_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds_label_en-US" xlink:label="lab_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operation, Amounts Of Material Contingent Liabilities Remaining, Performance Bonds</link:label>
    <link:label id="lab_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds_documentation_en-US" xlink:label="lab_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Discontinued Operation, Amounts Of Material Contingent Liabilities Remaining, Performance Bonds</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" xlink:href="tti-20250331.xsd#tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" xlink:to="lab_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BaseRateMember_04023874-4744-4c8f-aee9-b336cb2276c1_terseLabel_en-US" xlink:label="lab_us-gaap_BaseRateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Base Rate</link:label>
    <link:label id="lab_us-gaap_BaseRateMember_label_en-US" xlink:label="lab_us-gaap_BaseRateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Base Rate [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BaseRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BaseRateMember" xlink:to="lab_us-gaap_BaseRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_d4e4ac14-48c6-44f7-b90a-3cefdfa9b09f_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_e9616d2b-33c3-4d18-8157-1ed2d547c902_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Purchase obligation, 2027</link:label>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_label_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary" xlink:to="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_6031cddc-e730-4080-8dff-a52ba6d22696_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_e7d83cea-bb49-425e-b3a8-b02760830f61_terseLabel_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementClassOfStockAxis_label_en-US" xlink:label="lab_us-gaap_StatementClassOfStockAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementClassOfStockAxis" xlink:to="lab_us-gaap_StatementClassOfStockAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_SecuredOvernightFinancingRateSOFRMember_689a7718-1ba5-4e35-a408-2bef145bd79e_terseLabel_en-US" xlink:label="lab_tti_SecuredOvernightFinancingRateSOFRMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Secured Overnight Financing Rate (SOFR)</link:label>
    <link:label id="lab_tti_SecuredOvernightFinancingRateSOFRMember_label_en-US" xlink:label="lab_tti_SecuredOvernightFinancingRateSOFRMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Secured Overnight Financing Rate (SOFR) [Member]</link:label>
    <link:label id="lab_tti_SecuredOvernightFinancingRateSOFRMember_documentation_en-US" xlink:label="lab_tti_SecuredOvernightFinancingRateSOFRMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Secured Overnight Financing Rate (SOFR)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SecuredOvernightFinancingRateSOFRMember" xlink:href="tti-20250331.xsd#tti_SecuredOvernightFinancingRateSOFRMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_SecuredOvernightFinancingRateSOFRMember" xlink:to="lab_tti_SecuredOvernightFinancingRateSOFRMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ErrCompRecoveryTable_terseLabel_en-US" xlink:label="lab_ecd_ErrCompRecoveryTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Erroneously Awarded Compensation Recovery</link:label>
    <link:label id="lab_ecd_ErrCompRecoveryTable_label_en-US" xlink:label="lab_ecd_ErrCompRecoveryTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Erroneously Awarded Compensation Recovery [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompRecoveryTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompRecoveryTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ErrCompRecoveryTable" xlink:to="lab_ecd_ErrCompRecoveryTable" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_StandardLithiumLtd.Member_00466ef4-c11a-4864-a13d-b461488a71d3_terseLabel_en-US" xlink:label="lab_tti_StandardLithiumLtd.Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Standard Lithium</link:label>
    <link:label id="lab_tti_StandardLithiumLtd.Member_label_en-US" xlink:label="lab_tti_StandardLithiumLtd.Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Standard Lithium, Ltd. [Member]</link:label>
    <link:label id="lab_tti_StandardLithiumLtd.Member_documentation_en-US" xlink:label="lab_tti_StandardLithiumLtd.Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Standard Lithium, Ltd.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_StandardLithiumLtd.Member" xlink:href="tti-20250331.xsd#tti_StandardLithiumLtd.Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_StandardLithiumLtd.Member" xlink:to="lab_tti_StandardLithiumLtd.Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_f376929a-0ea2-493a-9911-636499492591_terseLabel_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Corporate</link:label>
    <link:label id="lab_us-gaap_CorporateNonSegmentMember_label_en-US" xlink:label="lab_us-gaap_CorporateNonSegmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Corporate, Non-Segment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CorporateNonSegmentMember" xlink:to="lab_us-gaap_CorporateNonSegmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_5489f803-d86e-4cf9-b5e6-79f1d65e0478_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (Decrease) in Other Operating Assets and Liabilities, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_50adda16-392b-49bd-83d9-3306a489b8a7_terseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Depreciation, amortization and accretion</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_7b83bd65-90d0-4ad7-beff-6e4356ec5b53_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest rate</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing, How MNPI Considered</link:label>
    <link:label id="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock_label_en-US" xlink:label="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing, How MNPI Considered [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgHowMnpiCnsdrdTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:to="lab_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_595f3e96-1319-4892-b27e-b24644ff40d8_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_cba798b7-541d-42fd-ade3-3fc3b2d8c6cc_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total TETRA stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ConsolidationItemsAxis_6a95a8dd-c219-4d64-91bc-220c8925cc54_terseLabel_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:label id="lab_srt_ConsolidationItemsAxis_label_en-US" xlink:label="lab_srt_ConsolidationItemsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Consolidation Items [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ConsolidationItemsAxis" xlink:to="lab_srt_ConsolidationItemsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RestatementDomain_bd8c4966-8ac1-4c00-91e9-8835e17c617e_terseLabel_en-US" xlink:label="lab_srt_RestatementDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revision of Prior Period [Domain]</link:label>
    <link:label id="lab_srt_RestatementDomain_label_en-US" xlink:label="lab_srt_RestatementDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revision of Prior Period [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RestatementDomain" xlink:to="lab_srt_RestatementDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_430a17cd-6086-4fd2-924e-efbeb20f0395_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income (loss) before taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_89754857-0a22-4250-aa91-d806d4327a65_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Table]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_caa06cb4-f610-4405-808b-c6f80f6f7f7c_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">(Level 2)</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member" xlink:to="lab_us-gaap_FairValueInputsLevel2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_MaritechMember_7f19c8af-362b-4c3f-b8fb-257cd6c4b47e_terseLabel_en-US" xlink:label="lab_tti_MaritechMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maritech</link:label>
    <link:label id="lab_tti_MaritechMember_label_en-US" xlink:label="lab_tti_MaritechMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maritech [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_MaritechMember" xlink:href="tti-20250331.xsd#tti_MaritechMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_MaritechMember" xlink:to="lab_tti_MaritechMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_59b47037-62a6-4b3d-9464-d3872718f924_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquireProductiveAssets_5363b534-bbfa-4aee-9b06-da04a4676af3_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireProductiveAssets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capital expenditures</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquireProductiveAssets_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquireProductiveAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Productive Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireProductiveAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireProductiveAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquireProductiveAssets" xlink:to="lab_us-gaap_PaymentsToAcquireProductiveAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_4b843de2-d68b-4b23-ba6d-8c2d01a2df53_terseLabel_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation by Category of Item Purchased [Axis]</link:label>
    <link:label id="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_label_en-US" xlink:label="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unrecorded Unconditional Purchase Obligation by Category of Item Purchased [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis" xlink:to="lab_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherInventorySupplies_9f70c860-dc5a-48b0-9ed4-ea60fb863634_terseLabel_en-US" xlink:label="lab_us-gaap_OtherInventorySupplies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Parts and supplies</link:label>
    <link:label id="lab_us-gaap_OtherInventorySupplies_label_en-US" xlink:label="lab_us-gaap_OtherInventorySupplies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Inventory, Supplies, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInventorySupplies" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherInventorySupplies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherInventorySupplies" xlink:to="lab_us-gaap_OtherInventorySupplies" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_5d1aa78c-6419-49e3-a613-b6d276e2cd88_terseLabel_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Patents, trademarks and other intangible assets, net of accumulated amortization of $56,745 in 2025 and $55,421 in 2024</link:label>
    <link:label id="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill_label_en-US" xlink:label="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible Assets, Net (Excluding Goodwill)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="lab_us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryFinishedGoods_a18d3ac4-2a29-44db-bb9f-b5908a54d445_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoods" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoods_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoods" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Finished Goods, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoods" xlink:to="lab_us-gaap_InventoryFinishedGoods" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupClassificationDomain_99198023-3001-49af-8a53-5676da21a721_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Domain]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupClassificationDomain_label_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain" xlink:to="lab_us-gaap_DisposalGroupClassificationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NamedExecutiveOfficersFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_NamedExecutiveOfficersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Named Executive Officers, Footnote</link:label>
    <link:label id="lab_ecd_NamedExecutiveOfficersFnTextBlock_label_en-US" xlink:label="lab_ecd_NamedExecutiveOfficersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Named Executive Officers, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NamedExecutiveOfficersFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:to="lab_ecd_NamedExecutiveOfficersFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_1af2eeea-a32c-47f1-add9-982657d0d1f4_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_e0c9bf2f-9314-4c56-9430-c0d335cb4fac_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Availability under agreement</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PvpTableTextBlock_terseLabel_en-US" xlink:label="lab_ecd_PvpTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure, Table</link:label>
    <link:label id="lab_ecd_PvpTableTextBlock_label_en-US" xlink:label="lab_ecd_PvpTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pay vs Performance [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PvpTableTextBlock" xlink:to="lab_ecd_PvpTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrIndTitle_terseLabel_en-US" xlink:label="lab_ecd_TrdArrIndTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Title</link:label>
    <link:label id="lab_ecd_TrdArrIndTitle_label_en-US" xlink:label="lab_ecd_TrdArrIndTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement, Individual Title</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndTitle" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrIndTitle" xlink:to="lab_ecd_TrdArrIndTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_d5a5654b-862d-4a50-8b61-af41d02115cc_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity-based compensation expense</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_c14378d6-59fa-477f-a2d2-24f1d816c68c_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_1afcfa06-2486-445e-80a3-fb29a25d8d2b_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Common Stock Par Value</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_IndividualAxis_terseLabel_en-US" xlink:label="lab_ecd_IndividualAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Individual:</link:label>
    <link:label id="lab_ecd_IndividualAxis_label_en-US" xlink:label="lab_ecd_IndividualAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Individual [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_IndividualAxis" xlink:to="lab_ecd_IndividualAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_ff7c7d19-4744-4af1-a69c-69956cbf6a11_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_1379d704-865c-4c7a-8862-a42b79b68ad0_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_d554a99e-0a0a-425f-9f15-97b5ac842d10_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net Income Per Share</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductOrServiceAxis_c60092fa-da2b-418f-81bd-adb8dac628b0_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet_fdd68e20-8e0f-4be3-a6e7-46b37ac9efff_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unamortized discount</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Unamortized Discount (Premium), Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet" xlink:to="lab_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_6f06cae5-c472-47ba-ab2a-793522816a78_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Recurring Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_a8591492-b917-480c-b802-7f23cc82bb9d_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_SegmentGeographicalDomain_2d6ae0c5-6984-4bf3-ab79-3290234253de_terseLabel_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:label id="lab_srt_SegmentGeographicalDomain_label_en-US" xlink:label="lab_srt_SegmentGeographicalDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_SegmentGeographicalDomain" xlink:to="lab_srt_SegmentGeographicalDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_ac23ba35-a46e-4388-a22f-13059bc7a56c_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_088f7c83-571f-44a7-a27c-4cea871a7569_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_8f46447f-01f1-40bd-bedb-a1969a4b7006_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Including Portion Attributable to Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_label_en-US" xlink:label="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments in and Advances to Affiliates [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract" xlink:to="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_CompletionFluidsProductsDivisionMember_70119125-962c-461c-9209-a90fd84c0dc6_verboseLabel_en-US" xlink:label="lab_tti_CompletionFluidsProductsDivisionMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Completion Fluids &amp; Products</link:label>
    <link:label id="lab_tti_CompletionFluidsProductsDivisionMember_23c8b8ae-b3bb-43dd-9662-77de9aa34d5d_terseLabel_en-US" xlink:label="lab_tti_CompletionFluidsProductsDivisionMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Completion Fluids &amp; Products Division</link:label>
    <link:label id="lab_tti_CompletionFluidsProductsDivisionMember_label_en-US" xlink:label="lab_tti_CompletionFluidsProductsDivisionMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Completion Fluids &amp; Products Division [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_CompletionFluidsProductsDivisionMember" xlink:href="tti-20250331.xsd#tti_CompletionFluidsProductsDivisionMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_CompletionFluidsProductsDivisionMember" xlink:to="lab_tti_CompletionFluidsProductsDivisionMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome_7a1fc4b3-d705-470a-a5c2-7a05f0ae58d3_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gain on investments</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Sale of Previously Unissued Stock by Subsidiary or Equity Investee, Nonoperating Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome" xlink:to="lab_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_200b3124-ed02-4e1a-8488-26aaf2561986_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_9613387e-364a-4d3d-8efc-d6420c0102a7_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardExrcPrice_terseLabel_en-US" xlink:label="lab_ecd_AwardExrcPrice" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Exercise Price</link:label>
    <link:label id="lab_ecd_AwardExrcPrice_label_en-US" xlink:label="lab_ecd_AwardExrcPrice" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Exercise Price</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardExrcPrice" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardExrcPrice"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardExrcPrice" xlink:to="lab_ecd_AwardExrcPrice" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisposalGroupClassificationAxis_97ff18bd-1cef-4bd6-b8f1-de8a9df55a01_terseLabel_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Axis]</link:label>
    <link:label id="lab_us-gaap_DisposalGroupClassificationAxis_label_en-US" xlink:label="lab_us-gaap_DisposalGroupClassificationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Classification [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis" xlink:to="lab_us-gaap_DisposalGroupClassificationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_48358531-b3fe-4ca5-bb21-6b8987205b72_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_173d7753-3d3e-43a2-b604-4014b07bafaf_terseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">ASSETS</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgMnpiDiscTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgMnpiDiscTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Disclosure</link:label>
    <link:label id="lab_ecd_AwardTmgMnpiDiscTextBlock_label_en-US" xlink:label="lab_ecd_AwardTmgMnpiDiscTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiDiscTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:to="lab_ecd_AwardTmgMnpiDiscTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt_be989a06-77bf-49bc-855a-6bd21cadbf2e_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from credit agreements and long-term debt</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Issuance of Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_46cc8cdf-eb1b-4ea9-a9df-e0574fda1961_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Shares withheld for taxes on equity-based compensation</link:label>
    <link:label id="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payment, Tax Withholding, Share-Based Payment Arrangement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="lab_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProfitLoss_5c4ea163-18d9-48bf-8916-0beed7a746d2_terseLabel_en-US" xlink:label="lab_us-gaap_ProfitLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:label id="lab_us-gaap_ProfitLoss_label_en-US" xlink:label="lab_us-gaap_ProfitLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Income (Loss), Including Portion Attributable to Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfitLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProfitLoss" xlink:to="lab_us-gaap_ProfitLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_20a4cc9f-adca-4c61-9208-ee6e0fcb0752_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by (used in) financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_e8bf2fee-896b-47f9-966c-5c6a216ec4bf_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred tax assets, net</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income Tax Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_3c6b1a14-4c3f-4bce-8ada-984d48553df1_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_a7561884-88bf-46d8-a70b-d6332f3c4b7c_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Foreign currency translation adjustment from continuing operations, net of taxes of $0 in 2025 and 2024</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_0cb06251-a29e-43ce-a931-f0f3ed46722d_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Translation adjustment, net of taxes</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Gain (Loss) Arising During Period, Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_aea4d75c-c53a-4fe6-8ab7-a6b487d079ab_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Other investing activities</link:label>
    <link:label id="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_label_en-US" xlink:label="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments for (Proceeds from) Other Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:to="lab_us-gaap_PaymentsForProceedsFromOtherInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_00f6a1c4-b9f8-427b-ba22-5114dca6bf4b_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Retained Deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToNonPeoNeoCompFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment to Non-PEO NEO Compensation Footnote</link:label>
    <link:label id="lab_ecd_AdjToNonPeoNeoCompFnTextBlock_label_en-US" xlink:label="lab_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Non-PEO NEO Compensation Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToNonPeoNeoCompFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:to="lab_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_8b01522b-d347-48c4-abb6-a7c7868a638f_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_ee512dd9-a594-4782-908b-df80d36b4bfa_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeerGroupTotalShareholderRtnAmt_terseLabel_en-US" xlink:label="lab_ecd_PeerGroupTotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Peer Group Total Shareholder Return Amount</link:label>
    <link:label id="lab_ecd_PeerGroupTotalShareholderRtnAmt_label_en-US" xlink:label="lab_ecd_PeerGroupTotalShareholderRtnAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Peer Group Total Shareholder Return Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupTotalShareholderRtnAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:to="lab_ecd_PeerGroupTotalShareholderRtnAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_InvestmentsOtherMember_765d08c8-d805-4ec1-9bfe-473dbe6d8d98_terseLabel_en-US" xlink:label="lab_tti_InvestmentsOtherMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other investments</link:label>
    <link:label id="lab_tti_InvestmentsOtherMember_label_en-US" xlink:label="lab_tti_InvestmentsOtherMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments, Other [Member]</link:label>
    <link:label id="lab_tti_InvestmentsOtherMember_documentation_en-US" xlink:label="lab_tti_InvestmentsOtherMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Investments, Other</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InvestmentsOtherMember" xlink:href="tti-20250331.xsd#tti_InvestmentsOtherMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_InvestmentsOtherMember" xlink:to="lab_tti_InvestmentsOtherMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_02120930-0fd7-44e9-be33-936673e156b0_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_2cdf1c5f-df11-4a41-b64a-fca9e7e1b59d_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Net income attributable to TETRA stockholders (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_e297b196-aff5-4eea-a811-23725235b117_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Increase to net income per share attributable to TETRA stockholders, basic (in dollars per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTable_d7b8c522-bc32-4337-9c76-12bb17c3241b_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTable_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Long-Term Debt Instruments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTable" xlink:to="lab_us-gaap_DebtInstrumentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_8fce4479-cff5-43b2-952d-1f0deb69641b_terseLabel_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:label id="lab_us-gaap_AccountingPoliciesAbstract_label_en-US" xlink:label="lab_us-gaap_AccountingPoliciesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountingPoliciesAbstract" xlink:to="lab_us-gaap_AccountingPoliciesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Valuation Assumption Difference, Footnote</link:label>
    <link:label id="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock_label_en-US" xlink:label="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Valuation Assumption Difference, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_EquityValuationAssumptionDifferenceFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:to="lab_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ErrCompAnalysisTextBlock_terseLabel_en-US" xlink:label="lab_ecd_ErrCompAnalysisTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Erroneous Compensation Analysis</link:label>
    <link:label id="lab_ecd_ErrCompAnalysisTextBlock_label_en-US" xlink:label="lab_ecd_ErrCompAnalysisTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Erroneous Compensation Analysis [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompAnalysisTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompAnalysisTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ErrCompAnalysisTextBlock" xlink:to="lab_ecd_ErrCompAnalysisTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrDuration_terseLabel_en-US" xlink:label="lab_ecd_TrdArrDuration" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Arrangement Duration</link:label>
    <link:label id="lab_ecd_TrdArrDuration_label_en-US" xlink:label="lab_ecd_TrdArrDuration" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement Duration</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrDuration" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrDuration"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrDuration" xlink:to="lab_ecd_TrdArrDuration" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_ae76a93e-5ab3-4ce1-80e8-f928141fa9b9_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgMnpiCnsdrdFlag_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgMnpiCnsdrdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Considered</link:label>
    <link:label id="lab_ecd_AwardTmgMnpiCnsdrdFlag_label_en-US" xlink:label="lab_ecd_AwardTmgMnpiCnsdrdFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing MNPI Considered [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiCnsdrdFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:to="lab_ecd_AwardTmgMnpiCnsdrdFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_0ca399fa-36ca-4473-be64-a9cc1251a0c1_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Financial Information of Segments</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_43f64129-fe29-4392-a323-7bafd7fb3be8_terseLabel_en-US" xlink:label="lab_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revision of Prior Period, Error Correction, Adjustment</link:label>
    <link:label id="lab_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_label_en-US" xlink:label="lab_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revision of Prior Period, Error Correction, Adjustment [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:to="lab_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_50ed0bd0-0ce6-402b-8623-e2836f17bdfd_terseLabel_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Discontinued Operations, Disposed of by Sale</link:label>
    <link:label id="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_label_en-US" xlink:label="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Discontinued Operations, Disposed of by Sale [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:to="lab_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember_28606c79-58a0-453a-ad9f-21b24dab6240_terseLabel_en-US" xlink:label="lab_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Secured Overnight Financing Rate (SOFR) Adjusted For Required Bank Reserves</link:label>
    <link:label id="lab_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember_label_en-US" xlink:label="lab_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Secured Overnight Financing Rate (SOFR) Adjusted For Required Bank Reserves [Member]</link:label>
    <link:label id="lab_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember_documentation_en-US" xlink:label="lab_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Secured Overnight Financing Rate (SOFR) Adjusted For Required Bank Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" xlink:href="tti-20250331.xsd#tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" xlink:to="lab_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxesPaid_e3167c56-ac8f-435e-90ec-a69b5e142e8b_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaid" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income taxes paid</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesPaid_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesPaid" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Taxes Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaid" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesPaid"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesPaid" xlink:to="lab_us-gaap_IncomeTaxesPaid" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_68549854-7afe-4831-8724-fbf98fae4849_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments in and Advances to Affiliates [Line Items]</link:label>
    <link:label id="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_label_en-US" xlink:label="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments in and Advances to Affiliates [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems" xlink:to="lab_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesNoncurrent_7fb9bd70-e3c3-4def-8215-706ad5a7c87f_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total long-term liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesNoncurrent" xlink:to="lab_us-gaap_LiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_7d4362d4-705c-4bc9-ba16-0de4c569b75b_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgPredtrmndFlag_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgPredtrmndFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing Predetermined</link:label>
    <link:label id="lab_ecd_AwardTmgPredtrmndFlag_label_en-US" xlink:label="lab_ecd_AwardTmgPredtrmndFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing Predetermined [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgPredtrmndFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgPredtrmndFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgPredtrmndFlag" xlink:to="lab_ecd_AwardTmgPredtrmndFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_10c6add8-d5d6-4887-9e95-941d37a1f52b_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy_label_en-US" xlink:label="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value of Financial Instruments, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:to="lab_us-gaap_FairValueOfFinancialInstrumentsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrTerminationDate_terseLabel_en-US" xlink:label="lab_ecd_TrdArrTerminationDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Termination Date</link:label>
    <link:label id="lab_ecd_TrdArrTerminationDate_label_en-US" xlink:label="lab_ecd_TrdArrTerminationDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement Termination Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrTerminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrTerminationDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrTerminationDate" xlink:to="lab_ecd_TrdArrTerminationDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_5fdcf89c-69a4-453d-9f22-ab5c30cc5f1e_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common stock, shares authorized (in shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryRawMaterials_05f077e4-fdcb-4815-a621-4bd7eaf20987_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterials" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Raw materials</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterials_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterials" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Raw Materials, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterials"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterials" xlink:to="lab_us-gaap_InventoryRawMaterials" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentInformationTable_8a420bca-0723-4cb7-923c-14445487f936_terseLabel_en-US" xlink:label="lab_dei_DocumentInformationTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:label id="lab_dei_DocumentInformationTable_label_en-US" xlink:label="lab_dei_DocumentInformationTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationTable" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentInformationTable" xlink:to="lab_dei_DocumentInformationTable" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_AssetBasedCreditAgreementMember_a1b36a19-beb5-4b4b-b646-ce1b8db0aa61_terseLabel_en-US" xlink:label="lab_tti_AssetBasedCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asset-Based Credit Agreement</link:label>
    <link:label id="lab_tti_AssetBasedCreditAgreementMember_label_en-US" xlink:label="lab_tti_AssetBasedCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset-Based Credit Agreement [Member]</link:label>
    <link:label id="lab_tti_AssetBasedCreditAgreementMember_documentation_en-US" xlink:label="lab_tti_AssetBasedCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Asset-Based Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_AssetBasedCreditAgreementMember" xlink:href="tti-20250331.xsd#tti_AssetBasedCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_AssetBasedCreditAgreementMember" xlink:to="lab_tti_AssetBasedCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_d52ee328-2ead-40ea-88da-3796921859ee_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:to="lab_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_DelayedDrawTermLoanDDTLMember_85946853-d44e-4428-b90d-d9b42127a6c3_terseLabel_en-US" xlink:label="lab_tti_DelayedDrawTermLoanDDTLMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Delayed-Draw Term Loan</link:label>
    <link:label id="lab_tti_DelayedDrawTermLoanDDTLMember_label_en-US" xlink:label="lab_tti_DelayedDrawTermLoanDDTLMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Delayed Draw Term Loan (DDTL) [Member]</link:label>
    <link:label id="lab_tti_DelayedDrawTermLoanDDTLMember_documentation_en-US" xlink:label="lab_tti_DelayedDrawTermLoanDDTLMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Delayed Draw Term Loan (DDTL)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DelayedDrawTermLoanDDTLMember" xlink:href="tti-20250331.xsd#tti_DelayedDrawTermLoanDDTLMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_DelayedDrawTermLoanDDTLMember" xlink:to="lab_tti_DelayedDrawTermLoanDDTLMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_06946b5b-f1d5-43c7-868a-80ea2888957a_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Reconciliation of net income to net cash provided by (used in) operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllTradingArrangementsMember_terseLabel_en-US" xlink:label="lab_ecd_AllTradingArrangementsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Trading Arrangements</link:label>
    <link:label id="lab_ecd_AllTradingArrangementsMember_label_en-US" xlink:label="lab_ecd_AllTradingArrangementsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Trading Arrangements [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllTradingArrangementsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllTradingArrangementsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllTradingArrangementsMember" xlink:to="lab_ecd_AllTradingArrangementsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AllAdjToCompMember_terseLabel_en-US" xlink:label="lab_ecd_AllAdjToCompMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">All Adjustments to Compensation</link:label>
    <link:label id="lab_ecd_AllAdjToCompMember_label_en-US" xlink:label="lab_ecd_AllAdjToCompMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">All Adjustments to Compensation [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllAdjToCompMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllAdjToCompMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AllAdjToCompMember" xlink:to="lab_ecd_AllAdjToCompMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgDiscLineItems_label_en-US" xlink:label="lab_ecd_AwardTmgDiscLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing Disclosures [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgDiscLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgDiscLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="lab_ecd_AwardTmgDiscLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_000d496b-6e01-4c28-beb3-df2bc36b76d4_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Restricted Cash</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:to="lab_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentTextBlock_a5851911-b608-49ba-8bf2-cc7fb7848b4c_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments</link:label>
    <link:label id="lab_us-gaap_InvestmentTextBlock_label_en-US" xlink:label="lab_us-gaap_InvestmentTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentTextBlock" xlink:to="lab_us-gaap_InvestmentTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_OutstandingRecoveryCompAmt_terseLabel_en-US" xlink:label="lab_ecd_OutstandingRecoveryCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Amount</link:label>
    <link:label id="lab_ecd_OutstandingRecoveryCompAmt_label_en-US" xlink:label="lab_ecd_OutstandingRecoveryCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Outstanding Recovery Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_OutstandingRecoveryCompAmt" xlink:to="lab_ecd_OutstandingRecoveryCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_GrossBrineLeaseAcres_d456db0d-9404-4139-9e3c-d8dba1c7fbc8_terseLabel_en-US" xlink:label="lab_tti_GrossBrineLeaseAcres" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Gross brine lease acres</link:label>
    <link:label id="lab_tti_GrossBrineLeaseAcres_label_en-US" xlink:label="lab_tti_GrossBrineLeaseAcres" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gross Brine Lease Acres</link:label>
    <link:label id="lab_tti_GrossBrineLeaseAcres_documentation_en-US" xlink:label="lab_tti_GrossBrineLeaseAcres" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Gross Brine Lease Acres</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_GrossBrineLeaseAcres" xlink:href="tti-20250331.xsd#tti_GrossBrineLeaseAcres"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_GrossBrineLeaseAcres" xlink:to="lab_tti_GrossBrineLeaseAcres" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_09a66101-d4fa-4e9e-bce2-bea7566e45ac_terseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Recovery of credit losses</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapital_542704da-81f8-4535-9aef-41ae322a8dd0_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapital_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid in Capital</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapital" xlink:to="lab_us-gaap_AdditionalPaidInCapital" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConvertibleDebtSecuritiesMember_6ce67cfa-1c86-4676-93a2-5817368b03af_terseLabel_en-US" xlink:label="lab_us-gaap_ConvertibleDebtSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Convertible Note</link:label>
    <link:label id="lab_us-gaap_ConvertibleDebtSecuritiesMember_label_en-US" xlink:label="lab_us-gaap_ConvertibleDebtSecuritiesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Convertible Debt Securities [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtSecuritiesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleDebtSecuritiesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConvertibleDebtSecuritiesMember" xlink:to="lab_us-gaap_ConvertibleDebtSecuritiesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentInformationLineItems_a8156318-48d8-403a-aeb2-fd78f56d4b75_terseLabel_en-US" xlink:label="lab_dei_DocumentInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:label id="lab_dei_DocumentInformationLineItems_label_en-US" xlink:label="lab_dei_DocumentInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationLineItems" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentInformationLineItems" xlink:to="lab_dei_DocumentInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_b870bfbd-9ee2-44c7-806c-b9e945f80cba_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries_8ceda5a7-dfbb-4400-b6ac-8e002a46352c_terseLabel_en-US" xlink:label="lab_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity interest in certain foreign subsidiaries</link:label>
    <link:label id="lab_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries_label_en-US" xlink:label="lab_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Collateral, Percentage Of Equity Interest In Certain Foreign Subsidiaries</link:label>
    <link:label id="lab_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries_documentation_en-US" xlink:label="lab_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Debt Instrument, Collateral, Percentage Of Equity Interest In Certain Foreign Subsidiaries</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" xlink:to="lab_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SuretyBondMember_1a541c8a-e115-4841-8abf-cd619a3eb234_terseLabel_en-US" xlink:label="lab_us-gaap_SuretyBondMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Surety Bond</link:label>
    <link:label id="lab_us-gaap_SuretyBondMember_label_en-US" xlink:label="lab_us-gaap_SuretyBondMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Surety Bond [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SuretyBondMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SuretyBondMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SuretyBondMember" xlink:to="lab_us-gaap_SuretyBondMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_43f0f306-13d9-469b-8a5d-0f69d5ab0f66_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWorkInProcess_72bd005f-4594-4507-a68a-581a7c0c5473_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcess" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Work in progress</link:label>
    <link:label id="lab_us-gaap_InventoryWorkInProcess_label_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcess" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory, Work in Process, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcess" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcess"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcess" xlink:to="lab_us-gaap_InventoryWorkInProcess" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeCurrent_9dafe7eb-4619-43ba-b135-1637704f5a25_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation and employee benefits</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeCurrent_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Deferred Income, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeCurrent" xlink:to="lab_us-gaap_DeferredIncomeCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_InsiderTradingArrLineItems_label_en-US" xlink:label="lab_ecd_InsiderTradingArrLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Insider Trading Arrangements [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingArrLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingArrLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="lab_ecd_InsiderTradingArrLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_33989607-fdb3-4353-a49c-348b9079851a_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Industry Segments Details [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Segment Reporting Information, by Segment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:to="lab_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_2ce0a6e7-15b5-435b-86ef-746380b6e753_terseLabel_en-US" xlink:label="lab_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unconditional Purchase Obligation, Category of Goods or Services Acquired [Domain]</link:label>
    <link:label id="lab_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_label_en-US" xlink:label="lab_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unconditional Purchase Obligation, Category of Goods or Services Acquired [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain" xlink:to="lab_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MachineryAndEquipmentGross_cc875904-b6ec-4e0b-a3c8-e864d65a941f_terseLabel_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Machinery and equipment</link:label>
    <link:label id="lab_us-gaap_MachineryAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Machinery and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentGross" xlink:to="lab_us-gaap_MachineryAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_08dd9134-a248-4b96-90ab-7d9b46f02b48_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_MtrlTermsOfTrdArrTextBlock_terseLabel_en-US" xlink:label="lab_ecd_MtrlTermsOfTrdArrTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Material Terms of Trading Arrangement</link:label>
    <link:label id="lab_ecd_MtrlTermsOfTrdArrTextBlock_label_en-US" xlink:label="lab_ecd_MtrlTermsOfTrdArrTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Material Terms of Trading Arrangement [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MtrlTermsOfTrdArrTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:to="lab_ecd_MtrlTermsOfTrdArrTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardTmgMethodTextBlock_terseLabel_en-US" xlink:label="lab_ecd_AwardTmgMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Award Timing Method</link:label>
    <link:label id="lab_ecd_AwardTmgMethodTextBlock_label_en-US" xlink:label="lab_ecd_AwardTmgMethodTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Timing Method [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMethodTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardTmgMethodTextBlock" xlink:to="lab_ecd_AwardTmgMethodTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToCompAmt_terseLabel_en-US" xlink:label="lab_ecd_AdjToCompAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation, Amount</link:label>
    <link:label id="lab_ecd_AdjToCompAmt_label_en-US" xlink:label="lab_ecd_AdjToCompAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToCompAmt" xlink:to="lab_ecd_AdjToCompAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_263932bc-9a60-4af3-a895-b21399200cfd_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from sale of property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale of Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:to="lab_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MinorityInterest_7809009d-27f9-4545-8cb8-2ed4cb111032_terseLabel_en-US" xlink:label="lab_us-gaap_MinorityInterest" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Noncontrolling interests</link:label>
    <link:label id="lab_us-gaap_MinorityInterest_label_en-US" xlink:label="lab_us-gaap_MinorityInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity, Attributable to Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MinorityInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MinorityInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MinorityInterest" xlink:to="lab_us-gaap_MinorityInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_92391766-5a87-4a77-82c7-a9f8d4812c41_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Net Income</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Net Income [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsNetIncomeTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrAdoptionDate_terseLabel_en-US" xlink:label="lab_ecd_TrdArrAdoptionDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adoption Date</link:label>
    <link:label id="lab_ecd_TrdArrAdoptionDate_label_en-US" xlink:label="lab_ecd_TrdArrAdoptionDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement Adoption Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrAdoptionDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrAdoptionDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrAdoptionDate" xlink:to="lab_ecd_TrdArrAdoptionDate" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PeerGroupIssuersFnTextBlock_terseLabel_en-US" xlink:label="lab_ecd_PeerGroupIssuersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Peer Group Issuers, Footnote</link:label>
    <link:label id="lab_ecd_PeerGroupIssuersFnTextBlock_label_en-US" xlink:label="lab_ecd_PeerGroupIssuersFnTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Peer Group Issuers, Footnote [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupIssuersFnTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:to="lab_ecd_PeerGroupIssuersFnTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_6dcba27b-d710-4533-a64a-d53c32a64008_negatedLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Less accumulated depreciation</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_7ea1abf5-5a43-49ba-9991-664025377418_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:to="lab_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_f5c29445-f67b-4d92-840f-403ebf7529e9_negatedLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Principal payments on credit agreements and long-term debt</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Repayments of Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:to="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TreasuryStockCommonMember_50cef24d-2973-412d-8d08-ad5807f2ae50_terseLabel_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Treasury Stock</link:label>
    <link:label id="lab_us-gaap_TreasuryStockCommonMember_label_en-US" xlink:label="lab_us-gaap_TreasuryStockCommonMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Treasury Stock, Common [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TreasuryStockCommonMember" xlink:to="lab_us-gaap_TreasuryStockCommonMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_74a8e30e-85c7-4161-bccb-29d87fd5a374_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_d0b59ea3-301f-4dda-ba82-deab47e98cff_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Industry Segments Details [Line Items]</link:label>
    <link:label id="lab_us-gaap_SegmentReportingInformationLineItems_label_en-US" xlink:label="lab_us-gaap_SegmentReportingInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems" xlink:to="lab_us-gaap_SegmentReportingInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_ContractWithCustomerLiabilityRevenueRecognizedNet_12d81bfc-6ee8-44db-96c1-102c6fc1e477_terseLabel_en-US" xlink:label="lab_tti_ContractWithCustomerLiabilityRevenueRecognizedNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deferred revenue recognized</link:label>
    <link:label id="lab_tti_ContractWithCustomerLiabilityRevenueRecognizedNet_label_en-US" xlink:label="lab_tti_ContractWithCustomerLiabilityRevenueRecognizedNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Contract With Customer, Liability, Revenue Recognized, Net</link:label>
    <link:label id="lab_tti_ContractWithCustomerLiabilityRevenueRecognizedNet_documentation_en-US" xlink:label="lab_tti_ContractWithCustomerLiabilityRevenueRecognizedNet" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Contract With Customer, Liability, Revenue Recognized, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_ContractWithCustomerLiabilityRevenueRecognizedNet" xlink:href="tti-20250331.xsd#tti_ContractWithCustomerLiabilityRevenueRecognizedNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_ContractWithCustomerLiabilityRevenueRecognizedNet" xlink:to="lab_tti_ContractWithCustomerLiabilityRevenueRecognizedNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_be0cbf8a-fe00-46d3-94b4-c60c992414d6_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Gain on sale of assets</link:label>
    <link:label id="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_label_en-US" xlink:label="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Gain (Loss) on Disposition of Property Plant Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="lab_us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonRule10b51ArrTrmntdFlag_terseLabel_en-US" xlink:label="lab_ecd_NonRule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Terminated</link:label>
    <link:label id="lab_ecd_NonRule10b51ArrTrmntdFlag_label_en-US" xlink:label="lab_ecd_NonRule10b51ArrTrmntdFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-Rule 10b5-1 Arrangement Terminated [Flag]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrTrmntdFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:to="lab_ecd_NonRule10b51ArrTrmntdFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingenciesByNatureOfContingencyAxis_f56df358-0471-4fd8-adf6-826ed139392a_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss Contingency Nature [Axis]</link:label>
    <link:label id="lab_us-gaap_LossContingenciesByNatureOfContingencyAxis_label_en-US" xlink:label="lab_us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss Contingency Nature [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:to="lab_us-gaap_LossContingenciesByNatureOfContingencyAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_bdbbbac6-b5ed-4cbe-806a-89a560c87584_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Provision for income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_0ea76650-cbd6-43fb-9655-d18d5690667a_negatedLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Increase to income tax benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NonUsMember_7d83ffe0-c2e8-4b18-8431-3326953d96fd_terseLabel_en-US" xlink:label="lab_us-gaap_NonUsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">International</link:label>
    <link:label id="lab_us-gaap_NonUsMember_label_en-US" xlink:label="lab_us-gaap_NonUsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-US [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonUsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NonUsMember" xlink:to="lab_us-gaap_NonUsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_cf8d70f9-5302-4e5c-a187-b369d2c8b46d_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap_FairValueDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueDisclosuresTextBlock" xlink:to="lab_us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NumberOfOperatingSegments_2aa26043-8e75-41d2-8579-36b48a7a0284_terseLabel_en-US" xlink:label="lab_us-gaap_NumberOfOperatingSegments" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of segment operations</link:label>
    <link:label id="lab_us-gaap_NumberOfOperatingSegments_label_en-US" xlink:label="lab_us-gaap_NumberOfOperatingSegments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Number of Operating Segments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NumberOfOperatingSegments" xlink:to="lab_us-gaap_NumberOfOperatingSegments" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_TrdArrIndName_terseLabel_en-US" xlink:label="lab_ecd_TrdArrIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_TrdArrIndName_label_en-US" xlink:label="lab_ecd_TrdArrIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Arrangement, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_TrdArrIndName" xlink:to="lab_ecd_TrdArrIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_17404eff-6da3-4c6c-9d1e-f2eb1d6acaa3_terseLabel_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Disaggregation of Revenue</link:label>
    <link:label id="lab_us-gaap_DisaggregationOfRevenueTableTextBlock_label_en-US" xlink:label="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disaggregation of Revenue [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:to="lab_us-gaap_DisaggregationOfRevenueTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_9ebf3215-991c-4ed0-ba34-7258729c62f0_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_TermLoanMember_0594a3df-020a-4995-ba6b-07e8eff85815_terseLabel_en-US" xlink:label="lab_tti_TermLoanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Term Loan Agreement</link:label>
    <link:label id="lab_tti_TermLoanMember_label_en-US" xlink:label="lab_tti_TermLoanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Term Loan [Member]</link:label>
    <link:label id="lab_tti_TermLoanMember_documentation_en-US" xlink:label="lab_tti_TermLoanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Term Loan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TermLoanMember" xlink:href="tti-20250331.xsd#tti_TermLoanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_TermLoanMember" xlink:to="lab_tti_TermLoanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_LandAndBuilding_e6b61b82-b055-4488-aa50-9143b747f2e6_terseLabel_en-US" xlink:label="lab_tti_LandAndBuilding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Land and building</link:label>
    <link:label id="lab_tti_LandAndBuilding_label_en-US" xlink:label="lab_tti_LandAndBuilding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Land And Building</link:label>
    <link:label id="lab_tti_LandAndBuilding_documentation_en-US" xlink:label="lab_tti_LandAndBuilding" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Carrying amount as of the balance sheet date of real estate held for productive use. This excludes land held for sale. And carrying amount as of the balance sheet date of long-lived, depreciable assets that include building structures held for productive use including any addition, improvement, or renovation to the structure, such as interior masonry, interior flooring, electrical, and plumbing.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_LandAndBuilding" xlink:href="tti-20250331.xsd#tti_LandAndBuilding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_LandAndBuilding" xlink:to="lab_tti_LandAndBuilding" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityDomain_31805b77-0bc9-413c-8f48-4570b49b50e4_terseLabel_en-US" xlink:label="lab_dei_EntityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:label id="lab_dei_EntityDomain_label_en-US" xlink:label="lab_dei_EntityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityDomain" xlink:to="lab_dei_EntityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Company Selected Measure</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Company Selected Measure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_834201c7-3056-4f3a-b0eb-1f188b01a920_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term Debt, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeAxis" xlink:to="lab_us-gaap_LongtermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_96d81dee-cd0a-4fc7-bb27-733ba1786488_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LegalEntityAxis_e01b96c3-df1d-42d4-adc0-6ab41e110ae1_terseLabel_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:label id="lab_dei_LegalEntityAxis_label_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LegalEntityAxis" xlink:to="lab_dei_LegalEntityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetRetirementObligationsNoncurrent_a5b4cbbc-c03f-4775-8309-80ce2f8a07f7_verboseLabel_en-US" xlink:label="lab_us-gaap_AssetRetirementObligationsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Asset retirement obligations</link:label>
    <link:label id="lab_us-gaap_AssetRetirementObligationsNoncurrent_label_en-US" xlink:label="lab_us-gaap_AssetRetirementObligationsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Asset Retirement Obligations, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetRetirementObligationsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetRetirementObligationsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetRetirementObligationsNoncurrent" xlink:to="lab_us-gaap_AssetRetirementObligationsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_160ee658-c608-4c50-9301-6e8bb6824849_terseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_f63f3b10-b6a0-4540-ad53-b45ee0444f3a_verboseLabel_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Cash and cash equivalents at end of period</link:label>
    <link:label id="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue_label_en-US" xlink:label="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash and Cash Equivalents, at Carrying Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="lab_us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_FedFundsEffectiveRateMember_bf7cf413-8b6b-47b6-9275-6dd368531199_terseLabel_en-US" xlink:label="lab_tti_FedFundsEffectiveRateMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fed Funds Effective Rate</link:label>
    <link:label id="lab_tti_FedFundsEffectiveRateMember_label_en-US" xlink:label="lab_tti_FedFundsEffectiveRateMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fed Funds Effective Rate [Member]</link:label>
    <link:label id="lab_tti_FedFundsEffectiveRateMember_documentation_en-US" xlink:label="lab_tti_FedFundsEffectiveRateMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Fed Funds Effective Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_FedFundsEffectiveRateMember" xlink:href="tti-20250331.xsd#tti_FedFundsEffectiveRateMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_FedFundsEffectiveRateMember" xlink:to="lab_tti_FedFundsEffectiveRateMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNet_b770cf87-504b-433b-a603-4e46ca5f2892_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNet" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Interest (income) expense, net</link:label>
    <link:label id="lab_us-gaap_InterestIncomeExpenseNet_label_en-US" xlink:label="lab_us-gaap_InterestIncomeExpenseNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Income (Expense), Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestIncomeExpenseNet" xlink:to="lab_us-gaap_InterestIncomeExpenseNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestPaidNet_7df31585-27c1-4b5c-ab26-6c777f7a83bb_terseLabel_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest paid</link:label>
    <link:label id="lab_us-gaap_InterestPaidNet_label_en-US" xlink:label="lab_us-gaap_InterestPaidNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Interest Paid, Excluding Capitalized Interest, Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestPaidNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestPaidNet" xlink:to="lab_us-gaap_InterestPaidNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_cd8f41c9-ab90-4dd2-8e44-295c5e2f5ec9_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityDomain_label_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain" xlink:to="lab_us-gaap_CreditFacilityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_55f00c72-13b4-4a41-816e-78c84d0f3d7c_terseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Current liabilities associated with discontinued operations</link:label>
    <link:label id="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Disposal Group, Including Discontinued Operation, Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:to="lab_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_990fa159-9825-485a-a2c1-beda4fdcdc1d_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basis spread on variable rate</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="lab_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock_terseLabel_en-US" xlink:label="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Other Measure</link:label>
    <link:label id="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock_label_en-US" xlink:label="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Compensation Actually Paid vs. Other Measure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsOtherMeasureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:to="lab_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_b79a01c8-34a5-4095-a61b-453a1df7decb_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt, net</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_0f7a90ab-f138-4a4a-854d-2c4cb6723ab0_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt, Excluding Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtNoncurrent" xlink:to="lab_us-gaap_LongTermDebtNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a90f0e36-acf8-4851-bb8a-eb8b345ddd7c_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average diluted shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a8fb117a-870b-4741-9b36-8fc61f1cf892_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Average diluted shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax_18ff6f96-91d8-4d4b-a3b0-19d50961ba76_terseLabel_en-US" xlink:label="lab_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-cash cumulative foreign currency translation adjustment loss from dissolution of Canadian subsidiary</link:label>
    <link:label id="lab_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax_label_en-US" xlink:label="lab_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-Cash Cumulative Translation Adjustment Gain (Loss), Net of Tax</link:label>
    <link:label id="lab_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax_documentation_en-US" xlink:label="lab_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Non-Cash Cumulative Translation Adjustment Gain (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" xlink:href="tti-20250331.xsd#tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" xlink:to="lab_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RightsMember_1388d0ff-c3df-4cad-a9ed-da055ca8236c_terseLabel_en-US" xlink:label="lab_us-gaap_RightsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Embedded Option</link:label>
    <link:label id="lab_us-gaap_RightsMember_label_en-US" xlink:label="lab_us-gaap_RightsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Rights [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RightsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RightsMember" xlink:to="lab_us-gaap_RightsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RecapitalizationCosts_4c92daae-948a-4964-b291-6166fe64911d_terseLabel_en-US" xlink:label="lab_us-gaap_RecapitalizationCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Capitalized development costs</link:label>
    <link:label id="lab_us-gaap_RecapitalizationCosts_label_en-US" xlink:label="lab_us-gaap_RecapitalizationCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Recapitalization Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RecapitalizationCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RecapitalizationCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RecapitalizationCosts" xlink:to="lab_us-gaap_RecapitalizationCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery, Explanation of Impracticability</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery, Explanation of Impracticability [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:to="lab_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_8a08652f-ef56-4a14-816a-8416b66d1b3e_terseLabel_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued liabilities and other</link:label>
    <link:label id="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:to="lab_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_068f859b-6ccb-44bf-ab65-9a252a73a7ad_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenue</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_2bfd116a-f9c4-416c-ba5f-2601c6646b42_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchases of property, plant and equipment, net</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_CoSelectedMeasureAmt_terseLabel_en-US" xlink:label="lab_ecd_CoSelectedMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Company Selected Measure Amount</link:label>
    <link:label id="lab_ecd_CoSelectedMeasureAmt_label_en-US" xlink:label="lab_ecd_CoSelectedMeasureAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Company Selected Measure Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_CoSelectedMeasureAmt" xlink:to="lab_ecd_CoSelectedMeasureAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_b4740caf-4962-4069-bff1-b258a464b4d2_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Additional Paid-In Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi_44af2610-0f21-4ff4-9e2b-d9495dbb00f4_terseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Proceeds from sale of investment</link:label>
    <link:label id="lab_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi_label_en-US" xlink:label="lab_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from Sale of Equity Securities, FV-NI</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi" xlink:to="lab_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_7bc2e7a2-84d0-456e-80f0-7f5c558b7cfc_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_595f5178-8f9f-4fd6-a5ec-12696c8bf55f_terseLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscIndName_terseLabel_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscIndName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Name</link:label>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscIndName_label_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscIndName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures, Individual Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscIndName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:to="lab_ecd_AwardsCloseToMnpiDiscIndName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingenciesLineItems_37435cab-7295-4c31-a90d-579a1cfbade8_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingenciesLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Loss Contingencies [Line Items]</link:label>
    <link:label id="lab_us-gaap_LossContingenciesLineItems_label_en-US" xlink:label="lab_us-gaap_LossContingenciesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Loss Contingencies [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingenciesLineItems" xlink:to="lab_us-gaap_LossContingenciesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RestatementAxis_1b06e495-7901-465d-9594-c4c22cb89839_terseLabel_en-US" xlink:label="lab_srt_RestatementAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
    <link:label id="lab_srt_RestatementAxis_label_en-US" xlink:label="lab_srt_RestatementAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revision of Prior Period [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RestatementAxis" xlink:to="lab_srt_RestatementAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_88454ed4-48ef-48f8-b849-09b584f8b9e2_terseLabel_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_c282dd97-9d8a-4db2-96b8-66420d9a9942_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity-based compensation</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCosts_01bc8d5c-0c2c-4958-a833-07d710137bc0_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amortization and expense of financing costs</link:label>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCosts_label_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of Debt Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCosts" xlink:to="lab_us-gaap_AmortizationOfFinancingCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_country_US_edf7b895-c7a8-4b39-942e-7dbd3d2ee379_terseLabel_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">United States</link:label>
    <link:label id="lab_country_US_label_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">UNITED STATES</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_US" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_US" xlink:to="lab_country_US" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SeriesAPreferredStockMember_a95e43f8-c389-4af0-bcae-d559396f07df_terseLabel_en-US" xlink:label="lab_us-gaap_SeriesAPreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Series A Preferred Stock</link:label>
    <link:label id="lab_us-gaap_SeriesAPreferredStockMember_label_en-US" xlink:label="lab_us-gaap_SeriesAPreferredStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Series A Preferred Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesAPreferredStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SeriesAPreferredStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SeriesAPreferredStockMember" xlink:to="lab_us-gaap_SeriesAPreferredStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_c5803657-126f-49e6-9d56-12bdef4ac332_terseLabel_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other liabilities</link:label>
    <link:label id="lab_us-gaap_OtherLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherLiabilitiesNoncurrent" xlink:to="lab_us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonNeosMember_terseLabel_en-US" xlink:label="lab_ecd_NonNeosMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-NEOs</link:label>
    <link:label id="lab_ecd_NonNeosMember_label_en-US" xlink:label="lab_ecd_NonNeosMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-NEOs [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonNeosMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonNeosMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonNeosMember" xlink:to="lab_ecd_NonNeosMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_367844e0-553f-475a-82bd-b60eff32396f_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Supplemental Cash Flow Information</link:label>
    <link:label id="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_0064dee6-d722-45b7-9ccf-740a15de8dd9_terseLabel_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Industry Segments</link:label>
    <link:label id="lab_us-gaap_SegmentReportingDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segment Reporting Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SegmentReportingDisclosureTextBlock" xlink:to="lab_us-gaap_SegmentReportingDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_eb074c08-cdc1-4689-9803-2fdc8714e3d3_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_label_en-US" xlink:label="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:to="lab_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_MineralResourcesArrangementsPolicyTextBlock_ff22854f-356a-499d-8308-0fe3ed5e37fa_terseLabel_en-US" xlink:label="lab_tti_MineralResourcesArrangementsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Mineral Resources Arrangement</link:label>
    <link:label id="lab_tti_MineralResourcesArrangementsPolicyTextBlock_label_en-US" xlink:label="lab_tti_MineralResourcesArrangementsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Mineral Resources Arrangements [Policy Text Block]</link:label>
    <link:label id="lab_tti_MineralResourcesArrangementsPolicyTextBlock_documentation_en-US" xlink:label="lab_tti_MineralResourcesArrangementsPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Mineral Resources Arrangements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_MineralResourcesArrangementsPolicyTextBlock" xlink:href="tti-20250331.xsd#tti_MineralResourcesArrangementsPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_MineralResourcesArrangementsPolicyTextBlock" xlink:to="lab_tti_MineralResourcesArrangementsPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_1b7709aa-dd52-4b77-81e2-9d0339d1a02c_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Increase (decrease) in cash and cash equivalents</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_441d3386-ab39-4c39-966e-9d4a2548b51c_terseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SecuredDebtMember_1f04e26c-7724-45db-b150-8a8ead2cfe51_terseLabel_en-US" xlink:label="lab_us-gaap_SecuredDebtMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Secured Debt</link:label>
    <link:label id="lab_us-gaap_SecuredDebtMember_label_en-US" xlink:label="lab_us-gaap_SecuredDebtMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Secured Debt [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebtMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SecuredDebtMember" xlink:to="lab_us-gaap_SecuredDebtMember" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonPeoNeoMember_terseLabel_en-US" xlink:label="lab_ecd_NonPeoNeoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-PEO NEO</link:label>
    <link:label id="lab_ecd_NonPeoNeoMember_label_en-US" xlink:label="lab_ecd_NonPeoNeoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-PEO NEO [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonPeoNeoMember" xlink:to="lab_ecd_NonPeoNeoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_4d13f30c-78ef-45d3-af58-2516d8444bbd_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AdjToCompAxis_terseLabel_en-US" xlink:label="lab_ecd_AdjToCompAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation:</link:label>
    <link:label id="lab_ecd_AdjToCompAxis_label_en-US" xlink:label="lab_ecd_AdjToCompAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustment to Compensation [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AdjToCompAxis" xlink:to="lab_ecd_AdjToCompAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_TotalOtherAssets_195d2ad6-3a67-447b-ac76-a287ae3bfed6_totalLabel_en-US" xlink:label="lab_tti_TotalOtherAssets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total other assets</link:label>
    <link:label id="lab_tti_TotalOtherAssets_label_en-US" xlink:label="lab_tti_TotalOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total Other Assets</link:label>
    <link:label id="lab_tti_TotalOtherAssets_documentation_en-US" xlink:label="lab_tti_TotalOtherAssets" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Aggregate carrying amount, as of the balance sheet date, of noncurrent assets excluding property, plant and equipment. Noncurrent assets are expected to be realized or consumed after one year (or the normal operating cycle, if longer).</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TotalOtherAssets" xlink:href="tti-20250331.xsd#tti_TotalOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_TotalOtherAssets" xlink:to="lab_tti_TotalOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_NonGaapMeasureDescriptionTextBlock_terseLabel_en-US" xlink:label="lab_ecd_NonGaapMeasureDescriptionTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-GAAP Measure Description</link:label>
    <link:label id="lab_ecd_NonGaapMeasureDescriptionTextBlock_label_en-US" xlink:label="lab_ecd_NonGaapMeasureDescriptionTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-GAAP Measure Description [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonGaapMeasureDescriptionTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:to="lab_ecd_NonGaapMeasureDescriptionTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_55f8ec73-91dd-457f-bec2-d155139342b6_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_98b41deb-6a37-4a56-8ab4-6f50243db2f2_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Weighted average basic shares outstanding (in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_0596eddc-7ee4-4566-85db-6f32d3e69b60_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Number of weighted average common shares outstanding ( in shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_24fb0cc9-b510-44d1-9821-29a91f6df332_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnamortizedDebtIssuanceExpense_a92aa539-70d3-4990-b5e9-caa72d0fad66_terseLabel_en-US" xlink:label="lab_us-gaap_UnamortizedDebtIssuanceExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Unamortized deferred finance costs</link:label>
    <link:label id="lab_us-gaap_UnamortizedDebtIssuanceExpense_label_en-US" xlink:label="lab_us-gaap_UnamortizedDebtIssuanceExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Unamortized Debt Issuance Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnamortizedDebtIssuanceExpense" xlink:to="lab_us-gaap_UnamortizedDebtIssuanceExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenuesAbstract_1b21194c-f62c-4deb-90ba-6a9ca52f79ec_terseLabel_en-US" xlink:label="lab_us-gaap_RevenuesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Revenues:</link:label>
    <link:label id="lab_us-gaap_RevenuesAbstract_label_en-US" xlink:label="lab_us-gaap_RevenuesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenues [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenuesAbstract" xlink:to="lab_us-gaap_RevenuesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_PvpTable_terseLabel_en-US" xlink:label="lab_ecd_PvpTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure</link:label>
    <link:label id="lab_ecd_PvpTable_label_en-US" xlink:label="lab_ecd_PvpTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pay vs Performance Disclosure [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_PvpTable" xlink:to="lab_ecd_PvpTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_0f58f5bf-6c9a-4ccb-9603-e0b5bd962f04_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Commitment fee rate</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Unused Capacity, Commitment Fee Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:to="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_92b7a834-02bb-48e4-98fe-07574c6addaa_terseLabel_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementBusinessSegmentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Segments [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis" xlink:to="lab_us-gaap_StatementBusinessSegmentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_7085e0b1-f3b5-4556-8885-6ae8ad79310d_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt_terseLabel_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Disqualification of Tax Benefits, Amount</link:label>
    <link:label id="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt_label_en-US" xlink:label="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Forgone Recovery due to Disqualification of Tax Benefits, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:to="lab_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDebtTableTextBlock_f430f78e-1c37-49e9-8330-2bedd28768ed_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Long-Term Debt</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDebtTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Debt [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDebtTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDebtTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTable_terseLabel_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures</link:label>
    <link:label id="lab_ecd_AwardsCloseToMnpiDiscTable_label_en-US" xlink:label="lab_ecd_AwardsCloseToMnpiDiscTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Awards Close in Time to MNPI Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:to="lab_ecd_AwardsCloseToMnpiDiscTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCredit_1b6523f8-b2a7-4769-b2bf-791d14d0bb27_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Outstanding debt</link:label>
    <link:label id="lab_us-gaap_LineOfCredit_label_en-US" xlink:label="lab_us-gaap_LineOfCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Line of Credit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCredit" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCredit" xlink:to="lab_us-gaap_LineOfCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_tti_LineOfCreditFacilityAdditionalBorrowingCapacity_b8d550de-b6b9-4a66-937a-54651771d787_terseLabel_en-US" xlink:label="lab_tti_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accordion feature</link:label>
    <link:label id="lab_tti_LineOfCreditFacilityAdditionalBorrowingCapacity_label_en-US" xlink:label="lab_tti_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Additional Borrowing Capacity</link:label>
    <link:label id="lab_tti_LineOfCreditFacilityAdditionalBorrowingCapacity_documentation_en-US" xlink:label="lab_tti_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Additional Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_tti_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:href="tti-20250331.xsd#tti_LineOfCreditFacilityAdditionalBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_tti_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:to="lab_tti_LineOfCreditFacilityAdditionalBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NoncontrollingInterestMember_276fb8e1-8c31-4e34-99be-3b33ace166ea_terseLabel_en-US" xlink:label="lab_us-gaap_NoncontrollingInterestMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Noncontrolling Interest</link:label>
    <link:label id="lab_us-gaap_NoncontrollingInterestMember_label_en-US" xlink:label="lab_us-gaap_NoncontrollingInterestMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Noncontrolling Interest [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncontrollingInterestMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncontrollingInterestMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NoncontrollingInterestMember" xlink:to="lab_us-gaap_NoncontrollingInterestMember" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>10
<FILENAME>tti-20250331_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2025 Workiva-->
<!--r:31d188f3-e502-4f84-8e46-ddb4fc1f350a,g:37a5f24c-bfcc-4cbd-95ae-bb27d63efc4d-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.tetratec.com/role/CoverPage" xlink:type="simple" xlink:href="tti-20250331.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_9e107a2c-11db-46ce-94ba-b436690ec761" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationTable_b6ede31e-8ba2-4be7-80c5-2991a9007664" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_9e107a2c-11db-46ce-94ba-b436690ec761" xlink:to="loc_dei_DocumentInformationTable_b6ede31e-8ba2-4be7-80c5-2991a9007664" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementClassOfStockAxis_cce1f94c-b030-418e-b018-fb80d2ed5805" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementClassOfStockAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationTable_b6ede31e-8ba2-4be7-80c5-2991a9007664" xlink:to="loc_us-gaap_StatementClassOfStockAxis_cce1f94c-b030-418e-b018-fb80d2ed5805" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ClassOfStockDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementClassOfStockAxis_cce1f94c-b030-418e-b018-fb80d2ed5805" xlink:to="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_5390c33c-7438-4271-8b84-f3c7b0003a98" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:to="loc_us-gaap_CommonStockMember_5390c33c-7438-4271-8b84-f3c7b0003a98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SeriesAPreferredStockMember_a20dc9dc-f41e-45c7-9fad-6d3230f09748" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SeriesAPreferredStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ClassOfStockDomain_434ab9a3-32ef-4e65-88bd-73ee810dfdcc" xlink:to="loc_us-gaap_SeriesAPreferredStockMember_a20dc9dc-f41e-45c7-9fad-6d3230f09748" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentInformationLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationTable_b6ede31e-8ba2-4be7-80c5-2991a9007664" xlink:to="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_55a352f4-e821-4b4e-b6b9-88226757c774" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentType_55a352f4-e821-4b4e-b6b9-88226757c774" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport_2c4c7c45-9dc5-4134-a06e-995bbe942247" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentQuarterlyReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentQuarterlyReport_2c4c7c45-9dc5-4134-a06e-995bbe942247" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_7de51ef0-e839-4229-9055-ca407e6ec620" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentPeriodEndDate_7de51ef0-e839-4229-9055-ca407e6ec620" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_85e4174d-6537-489c-922b-357ace4ff071" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentTransitionReport_85e4174d-6537-489c-922b-357ace4ff071" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_f92eda8d-f0c3-49c8-9d16-72335180bcdf" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityFileNumber_f92eda8d-f0c3-49c8-9d16-72335180bcdf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_66f39238-7b22-4ab9-ae3e-c52ed1f16b56" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityRegistrantName_66f39238-7b22-4ab9-ae3e-c52ed1f16b56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_e4609d12-4f64-4831-9a73-a2ed60f1c25e" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityIncorporationStateCountryCode_e4609d12-4f64-4831-9a73-a2ed60f1c25e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_ca1dd4bd-4482-4279-9b42-8fde0ef09aac" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityTaxIdentificationNumber_ca1dd4bd-4482-4279-9b42-8fde0ef09aac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_ebf811ee-69e9-4d54-8b05-373de698bc49" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressAddressLine1_ebf811ee-69e9-4d54-8b05-373de698bc49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_89d90843-cf01-443f-b587-e9fb7b3b9794" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressCityOrTown_89d90843-cf01-443f-b587-e9fb7b3b9794" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_f7db9528-d3e8-42d7-a97c-cec744bef941" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressPostalZipCode_f7db9528-d3e8-42d7-a97c-cec744bef941" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_17807f39-4621-4d49-aa1b-1996836aa28d" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityAddressStateOrProvince_17807f39-4621-4d49-aa1b-1996836aa28d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_72fcb675-f468-481b-b15f-63627a2c5698" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_CityAreaCode_72fcb675-f468-481b-b15f-63627a2c5698" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_2cc250c4-c67c-4774-8315-6d6e7fdc4a06" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_LocalPhoneNumber_2cc250c4-c67c-4774-8315-6d6e7fdc4a06" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_c3a8a58c-fdee-4cc4-959e-8540184f7766" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_Security12bTitle_c3a8a58c-fdee-4cc4-959e-8540184f7766" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_014c80a2-94cb-4140-82cb-d707a938c885" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_TradingSymbol_014c80a2-94cb-4140-82cb-d707a938c885" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_081cab03-4608-4fc1-a309-6d89299c1016" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_SecurityExchangeName_081cab03-4608-4fc1-a309-6d89299c1016" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_NoTradingSymbolFlag_a0966ac6-651c-4c68-9208-f55fca1f6134" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_NoTradingSymbolFlag"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_NoTradingSymbolFlag_a0966ac6-651c-4c68-9208-f55fca1f6134" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_acfb127d-f6a5-4e4e-aff9-3a0584e6a26a" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityCurrentReportingStatus_acfb127d-f6a5-4e4e-aff9-3a0584e6a26a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_31f08e56-24e6-47da-92d0-2b9686e6600b" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityInteractiveDataCurrent_31f08e56-24e6-47da-92d0-2b9686e6600b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_061ed393-34c8-44cb-a6d4-fa68de7de24e" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityShellCompany_061ed393-34c8-44cb-a6d4-fa68de7de24e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_8f9473dc-e4c1-4306-9c22-3781bed52635" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_8f9473dc-e4c1-4306-9c22-3781bed52635" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_ebcd59bf-9fd9-4fba-a760-a9ca3d8a5a7e" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityCentralIndexKey_ebcd59bf-9fd9-4fba-a760-a9ca3d8a5a7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_d206a797-2f89-4e50-b579-b3084654de3f" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_CurrentFiscalYearEndDate_d206a797-2f89-4e50-b579-b3084654de3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_b3b75d51-70cb-4d4e-b8f0-034bdccfe8d3" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityFilerCategory_b3b75d51-70cb-4d4e-b8f0-034bdccfe8d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_309e48f0-4670-48fa-9278-5ef84d2dde1c" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntitySmallBusiness_309e48f0-4670-48fa-9278-5ef84d2dde1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_ee8a984f-504f-4067-86f1-9ae0ce7f0069" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_EntityEmergingGrowthCompany_ee8a984f-504f-4067-86f1-9ae0ce7f0069" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_d97df84b-4750-4535-9da1-d7ed027967b5" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentFiscalYearFocus_d97df84b-4750-4535-9da1-d7ed027967b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_9a0ba082-054b-4e93-856d-f3e29a47e738" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_DocumentFiscalPeriodFocus_9a0ba082-054b-4e93-856d-f3e29a47e738" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_4ac3d379-ba92-4903-a91e-3afecd4059af" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_27f20bf5-6d67-450f-9e8f-0b332f3379d9" xlink:to="loc_dei_AmendmentFlag_4ac3d379-ba92-4903-a91e-3afecd4059af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofOperations" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofOperations"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofOperations" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_0ea00fcf-a7fc-435e-82b6-97155ca652d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_c3c4dbc5-916d-45d6-8525-5dd2aaabf42e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_0ea00fcf-a7fc-435e-82b6-97155ca652d8" xlink:to="loc_us-gaap_StatementTable_c3c4dbc5-916d-45d6-8525-5dd2aaabf42e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_559a7aa2-e44e-4353-8479-26b05cd3c732" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_c3c4dbc5-916d-45d6-8525-5dd2aaabf42e" xlink:to="loc_srt_ProductOrServiceAxis_559a7aa2-e44e-4353-8479-26b05cd3c732" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_559a7aa2-e44e-4353-8479-26b05cd3c732" xlink:to="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductMember_1bea3567-5f85-4410-a89d-e0f258c92a39" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProductMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:to="loc_us-gaap_ProductMember_1bea3567-5f85-4410-a89d-e0f258c92a39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ServiceMember_39555e1f-2a2b-430d-894d-7b7b2fea534d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ServiceMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_e4e38db1-0218-4eac-b6de-7efc34ef84a6" xlink:to="loc_us-gaap_ServiceMember_39555e1f-2a2b-430d-894d-7b7b2fea534d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_c3c4dbc5-916d-45d6-8525-5dd2aaabf42e" xlink:to="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenuesAbstract_ac530480-c1f5-42e3-8bf8-c377f0cdd82c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenuesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_RevenuesAbstract_ac530480-c1f5-42e3-8bf8-c377f0cdd82c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_d3defd48-9f66-49c8-8a6e-e05ac8f1d690" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenuesAbstract_ac530480-c1f5-42e3-8bf8-c377f0cdd82c" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_d3defd48-9f66-49c8-8a6e-e05ac8f1d690" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfRevenueAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_c4c9c9f3-ef40-4f25-ad3b-9e894f56602b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_c4c9c9f3-ef40-4f25-ad3b-9e894f56602b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DepreciationDepletionAmortizationAndAccretion_1b93f7ba-8e49-4650-8782-d83d702b2ac9" xlink:href="tti-20250331.xsd#tti_DepreciationDepletionAmortizationAndAccretion"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_tti_DepreciationDepletionAmortizationAndAccretion_1b93f7ba-8e49-4650-8782-d83d702b2ac9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetImpairmentCharges_8236acfd-8fe0-4908-9f11-ea66c3148a41" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_us-gaap_AssetImpairmentCharges_8236acfd-8fe0-4908-9f11-ea66c3148a41" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostsAndExpenses_df99b457-a834-44c4-9a9c-7d0a45d74172" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostsAndExpenses"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CostOfRevenueAbstract_ed19c07f-2790-4634-915e-f8925df5d0e2" xlink:to="loc_us-gaap_CostsAndExpenses_df99b457-a834-44c4-9a9c-7d0a45d74172" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_2da9f1dc-6071-4a31-a282-b4d487c1b370" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_GrossProfit_2da9f1dc-6071-4a31-a282-b4d487c1b370" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_9b17313a-85b7-4269-a2cd-46d38fa53fba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_9b17313a-85b7-4269-a2cd-46d38fa53fba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_faeff702-d213-4d4c-8397-b14eac3e85bc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_InterestExpense_faeff702-d213-4d4c-8397-b14eac3e85bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_c55cea58-a0fa-4724-b358-1e760c38f737" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_c55cea58-a0fa-4724-b358-1e760c38f737" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_05071eb1-0a0e-4ad5-8dfb-88fc68d13eee" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_05071eb1-0a0e-4ad5-8dfb-88fc68d13eee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_ddf30693-3c7c-4428-8a8b-a9ecd5b337e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_ddf30693-3c7c-4428-8a8b-a9ecd5b337e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_ab4bdb9f-09dd-4f92-a088-7657b8ca131d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_ab4bdb9f-09dd-4f92-a088-7657b8ca131d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_05ec7877-3bac-44a5-9179-684aa2249b42" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_NetIncomeLoss_05ec7877-3bac-44a5-9179-684aa2249b42" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasicAbstract_3aa8293f-50d7-4e82-afbb-b67f98e7e328" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasicAbstract"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_EarningsPerShareBasicAbstract_3aa8293f-50d7-4e82-afbb-b67f98e7e328" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_0a77a83e-9d23-4633-840e-f2ae14c5df05" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareBasicAbstract_3aa8293f-50d7-4e82-afbb-b67f98e7e328" xlink:to="loc_us-gaap_EarningsPerShareBasic_0a77a83e-9d23-4633-840e-f2ae14c5df05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_3eda5ae4-e2c9-48d9-9f41-9f19af6631e4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_3eda5ae4-e2c9-48d9-9f41-9f19af6631e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDilutedAbstract_2b893b36-8370-4508-9bb5-4767e182dc83" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDilutedAbstract"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_EarningsPerShareDilutedAbstract_2b893b36-8370-4508-9bb5-4767e182dc83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_0b6173d3-5757-48b5-9627-8b02ed7ef9f3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareDilutedAbstract_2b893b36-8370-4508-9bb5-4767e182dc83" xlink:to="loc_us-gaap_EarningsPerShareDiluted_0b6173d3-5757-48b5-9627-8b02ed7ef9f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_5297708c-7c92-4927-a471-000d513784de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_1392cbfd-a6c9-4209-8ecf-b324b44b8b29" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_5297708c-7c92-4927-a471-000d513784de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofComprehensiveIncomeLoss"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_9e039828-a961-4c18-84ec-d466938afdde" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_eacbcb2c-a39c-4f6f-852b-3ee7b5e8d078" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfitLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_9e039828-a961-4c18-84ec-d466938afdde" xlink:to="loc_us-gaap_ProfitLoss_eacbcb2c-a39c-4f6f-852b-3ee7b5e8d078" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_81d68fdb-ba79-4950-8ea9-b21aea67a5b3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_9e039828-a961-4c18-84ec-d466938afdde" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_81d68fdb-ba79-4950-8ea9-b21aea67a5b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_cd12a2a0-9ee3-4430-a463-3cc82981ab83" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_9e039828-a961-4c18-84ec-d466938afdde" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_cd12a2a0-9ee3-4430-a463-3cc82981ab83" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_43f3d292-54a9-4e85-9b72-924e96a45dcc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_9e039828-a961-4c18-84ec-d466938afdde" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_43f3d292-54a9-4e85-9b72-924e96a45dcc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_795fbf9e-bd97-4907-b3d5-896891be0319" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_9e039828-a961-4c18-84ec-d466938afdde" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_795fbf9e-bd97-4907-b3d5-896891be0319" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLossParenthetical" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofComprehensiveIncomeLossParenthetical"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLossParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_0a3dcee3-da87-468d-8524-7cb33d565941" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest_e1017a1a-1a60-41fd-9720-b2fc3efd7b32" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_0a3dcee3-da87-468d-8524-7cb33d565941" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest_e1017a1a-1a60-41fd-9720-b2fc3efd7b32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedBalanceSheets" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_505e584c-a300-4226-b21c-9cf3f2f81d3a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_c4cf10f6-55d0-4047-851b-b2e534297232" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_505e584c-a300-4226-b21c-9cf3f2f81d3a" xlink:to="loc_us-gaap_AssetsAbstract_c4cf10f6-55d0-4047-851b-b2e534297232" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_c4cf10f6-55d0-4047-851b-b2e534297232" xlink:to="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_3f8b5f78-6039-4557-b014-2d032bd8a3dd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_3f8b5f78-6039-4557-b014-2d032bd8a3dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_55324a40-cdfa-49e1-a01a-ed91473f39c3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_55324a40-cdfa-49e1-a01a-ed91473f39c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_d8aa215a-3d32-419e-b3d0-e8cf0fcf3994" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_d8aa215a-3d32-419e-b3d0-e8cf0fcf3994" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_fd4f0e7f-1b63-4d33-a40d-f5a009ee0e33" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:to="loc_us-gaap_InventoryNet_fd4f0e7f-1b63-4d33-a40d-f5a009ee0e33" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_cdd97f30-5e2f-481e-a8c2-b724a030f134" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_cdd97f30-5e2f-481e-a8c2-b724a030f134" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_16193ff2-d812-420c-ba1a-7c41ece467a0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_304f2d38-f1dc-4361-aa29-df7a35676bd2" xlink:to="loc_us-gaap_AssetsCurrent_16193ff2-d812-420c-ba1a-7c41ece467a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNetAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_c4cf10f6-55d0-4047-851b-b2e534297232" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_LandAndBuilding_35ae4cf8-696e-48d5-893f-1f0653b70fc0" xlink:href="tti-20250331.xsd#tti_LandAndBuilding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_tti_LandAndBuilding_35ae4cf8-696e-48d5-893f-1f0653b70fc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_4d2eeedd-3390-4bfb-bd65-d9847de1ce47" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_4d2eeedd-3390-4bfb-bd65-d9847de1ce47" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_AutomobilesAndTrucks_c02b75dd-bb1d-44e5-89ef-7ff04cdf3d3e" xlink:href="tti-20250331.xsd#tti_AutomobilesAndTrucks"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_tti_AutomobilesAndTrucks_c02b75dd-bb1d-44e5-89ef-7ff04cdf3d3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_ChemicalPlants_2b2a356f-e7e6-42fc-8408-f4edb996ae48" xlink:href="tti-20250331.xsd#tti_ChemicalPlants"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_tti_ChemicalPlants_2b2a356f-e7e6-42fc-8408-f4edb996ae48" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConstructionInProgressGross_dec41889-fb24-4e5b-8bbc-fd1436db9cd7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConstructionInProgressGross"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_us-gaap_ConstructionInProgressGross_dec41889-fb24-4e5b-8bbc-fd1436db9cd7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_f156970e-ab0e-46e2-93df-9cd8ef1df8dc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_f156970e-ab0e-46e2-93df-9cd8ef1df8dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_f48367f3-5d42-43ae-9810-ac3dff858d11" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_f48367f3-5d42-43ae-9810-ac3dff858d11" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_3bb196ed-6bb0-4ca6-9e50-15b1be31c117" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNetAbstract_d4a1d083-b3d8-46d5-9600-b6594b3fab98" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_3bb196ed-6bb0-4ca6-9e50-15b1be31c117" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetsNoncurrentAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_c4cf10f6-55d0-4047-851b-b2e534297232" xlink:to="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_ee6ca876-9a0f-463f-8ddf-6cfe510cd71d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:to="loc_us-gaap_IntangibleAssetsNetExcludingGoodwill_ee6ca876-9a0f-463f-8ddf-6cfe510cd71d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_3b1b146d-44f5-49e4-826c-325c84e6a671" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_3b1b146d-44f5-49e4-826c-325c84e6a671" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_54be3261-aa6e-4795-9542-52576bd02dd1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_54be3261-aa6e-4795-9542-52576bd02dd1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNi_c00d30a4-c507-4454-b623-22319885ca5f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesFvNi"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:to="loc_us-gaap_EquitySecuritiesFvNi_c00d30a4-c507-4454-b623-22319885ca5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_66f9b3ec-44ed-48a8-8750-60bec4fee4c3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_66f9b3ec-44ed-48a8-8750-60bec4fee4c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TotalOtherAssets_937ca367-5673-4ec1-99ec-8465ba2960da" xlink:href="tti-20250331.xsd#tti_TotalOtherAssets"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsNoncurrentAbstract_208e73cd-cfb4-42d4-a5c3-9ec09edf9772" xlink:to="loc_tti_TotalOtherAssets_937ca367-5673-4ec1-99ec-8465ba2960da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_d4f531db-b87f-4383-b349-bad95571b609" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_c4cf10f6-55d0-4047-851b-b2e534297232" xlink:to="loc_us-gaap_Assets_d4f531db-b87f-4383-b349-bad95571b609" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_505e584c-a300-4226-b21c-9cf3f2f81d3a" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_dcc71155-e725-4691-92fe-957da0237aa7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountsPayableCurrentAndNoncurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:to="loc_us-gaap_AccountsPayableCurrentAndNoncurrent_dcc71155-e725-4691-92fe-957da0237aa7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeCurrent_3a6337fa-e472-417d-b383-dfe462cf914f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:to="loc_us-gaap_DeferredIncomeCurrent_3a6337fa-e472-417d-b383-dfe462cf914f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_015ab291-dbe8-406a-b073-659f9c57a138" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_015ab291-dbe8-406a-b073-659f9c57a138" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TaxesPayableCurrent_83a80c3a-8cff-418d-9c9e-b4484c185da5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TaxesPayableCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:to="loc_us-gaap_TaxesPayableCurrent_83a80c3a-8cff-418d-9c9e-b4484c185da5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_1e85db52-cdce-4784-bbb2-7a13d24240a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccruedLiabilitiesCurrentAndNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:to="loc_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent_1e85db52-cdce-4784-bbb2-7a13d24240a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_9eb72eaf-dbe5-482b-8fdb-c789058c7526" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:to="loc_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent_9eb72eaf-dbe5-482b-8fdb-c789058c7526" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_c2246bbb-1388-4334-8699-b3d1d1107a1a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_03ab9a75-a30e-4867-af2c-6cfb3cfbae8a" xlink:to="loc_us-gaap_LiabilitiesCurrent_c2246bbb-1388-4334-8699-b3d1d1107a1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_adc15a81-92ec-4df1-af8d-2593621b4b5f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_adc15a81-92ec-4df1-af8d-2593621b4b5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_0605f5cd-5cb3-4576-9f0c-bd6a9818b7b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_0605f5cd-5cb3-4576-9f0c-bd6a9818b7b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetRetirementObligationsNoncurrent_bc385119-a4d7-433e-9425-2380e27e81de" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetRetirementObligationsNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_AssetRetirementObligationsNoncurrent_bc385119-a4d7-433e-9425-2380e27e81de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_69b327cb-421d-4bfb-a618-8ea5573bafa0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_DeferredIncomeTaxLiabilitiesNet_69b327cb-421d-4bfb-a618-8ea5573bafa0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherLiabilitiesNoncurrent_728156f3-d37d-462e-8298-72125dd0263c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherLiabilitiesNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_OtherLiabilitiesNoncurrent_728156f3-d37d-462e-8298-72125dd0263c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_5a8c527a-d347-48e9-a04c-046db0f8bf1c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_LiabilitiesNoncurrent_5a8c527a-d347-48e9-a04c-046db0f8bf1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_daee6ebb-28f7-4e19-8498-cc07429e417f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_CommitmentsAndContingencies_daee6ebb-28f7-4e19-8498-cc07429e417f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_9b5a7a8e-6da5-4e88-ac50-9c3e23ad2cb4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_CommonStockValue_9b5a7a8e-6da5-4e88-ac50-9c3e23ad2cb4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital_fee5dea8-7a75-482d-a00b-a5d8984e70e8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_AdditionalPaidInCapital_fee5dea8-7a75-482d-a00b-a5d8984e70e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockValue_a178ff22-6d3c-4402-89e1-afabb2694b4d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_TreasuryStockValue_a178ff22-6d3c-4402-89e1-afabb2694b4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_e89d8dbc-26e3-4d22-bb33-3fa16436f2ef" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_e89d8dbc-26e3-4d22-bb33-3fa16436f2ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_e8122bfc-184d-45ee-92e1-cdfe1b01a1cf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_e8122bfc-184d-45ee-92e1-cdfe1b01a1cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_582aa07c-946d-4a10-a8af-b3a610ecf176" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_StockholdersEquity_582aa07c-946d-4a10-a8af-b3a610ecf176" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MinorityInterest_638baaf0-0e20-47f8-b9a0-a8f1490fe77d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_MinorityInterest"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_MinorityInterest_638baaf0-0e20-47f8-b9a0-a8f1490fe77d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_15c4f1ca-a89d-4119-9fc7-0af45e9bf670" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_0a6db4ba-8b0b-4de6-963c-4c0563664c88" xlink:to="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_15c4f1ca-a89d-4119-9fc7-0af45e9bf670" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_d8c1f69d-8f67-47d2-a4d1-82485364b4c2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquityAbstract_2dfec337-c32a-4e5d-8ceb-096cf95c1125" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_d8c1f69d-8f67-47d2-a4d1-82485364b4c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedBalanceSheetsParenthetical"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_59435843-fb64-44fe-9f39-10721787d705" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_239941d2-8c10-4c2a-8d64-bfb42d6e2c77" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_59435843-fb64-44fe-9f39-10721787d705" xlink:to="loc_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent_239941d2-8c10-4c2a-8d64-bfb42d6e2c77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_9525f0ce-26da-469a-9c39-e9227e944099" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_59435843-fb64-44fe-9f39-10721787d705" xlink:to="loc_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization_9525f0ce-26da-469a-9c39-e9227e944099" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_d6a91829-1c62-4881-a338-22df87ff5aba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_59435843-fb64-44fe-9f39-10721787d705" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_d6a91829-1c62-4881-a338-22df87ff5aba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_5fe39efc-7061-4515-9127-b81a83296e4b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_59435843-fb64-44fe-9f39-10721787d705" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_5fe39efc-7061-4515-9127-b81a83296e4b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_da693241-b3e9-425a-993f-4d9814209ef8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_59435843-fb64-44fe-9f39-10721787d705" xlink:to="loc_us-gaap_CommonStockSharesIssued_da693241-b3e9-425a-993f-4d9814209ef8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonShares_3e11801f-792c-4606-a8a6-7ce85412f0bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonShares"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_59435843-fb64-44fe-9f39-10721787d705" xlink:to="loc_us-gaap_TreasuryStockCommonShares_3e11801f-792c-4606-a8a6-7ce85412f0bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementofEquityStatement"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_ca2b2df0-ea95-4801-be93-aff3fe9cfa51" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_3ba0a082-3ad7-4e1c-9bdc-87edcbf4b7cd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_ca2b2df0-ea95-4801-be93-aff3fe9cfa51" xlink:to="loc_us-gaap_StatementTable_3ba0a082-3ad7-4e1c-9bdc-87edcbf4b7cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_de050c13-774c-496c-9b60-e248d97abb70" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_3ba0a082-3ad7-4e1c-9bdc-87edcbf4b7cd" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_de050c13-774c-496c-9b60-e248d97abb70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_de050c13-774c-496c-9b60-e248d97abb70" xlink:to="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_01d7cdf5-8f3f-4a0d-a035-fb234e0289bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_CommonStockMember_01d7cdf5-8f3f-4a0d-a035-fb234e0289bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_a5cdb5e2-311f-42e4-8914-513258ac7170" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_a5cdb5e2-311f-42e4-8914-513258ac7170" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TreasuryStockCommonMember_6c425034-c6bb-4202-8932-1d3ab6c2bd85" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_TreasuryStockCommonMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_TreasuryStockCommonMember_6c425034-c6bb-4202-8932-1d3ab6c2bd85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedTranslationAdjustmentMember_6b83e987-473d-44ec-822d-ea0eeb572b67" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccumulatedTranslationAdjustmentMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_AccumulatedTranslationAdjustmentMember_6b83e987-473d-44ec-822d-ea0eeb572b67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember_005586e5-e0ab-4724-b80c-8d0a687b1d30" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember_005586e5-e0ab-4724-b80c-8d0a687b1d30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_3f165228-04b7-4495-822e-39f3d55ce0ba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_RetainedEarningsMember_3f165228-04b7-4495-822e-39f3d55ce0ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NoncontrollingInterestMember_005204b3-6761-4fe6-9ca0-7212b153326c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NoncontrollingInterestMember"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_6e890c78-8d0e-49a2-b0a8-0c13f09b15c7" xlink:to="loc_us-gaap_NoncontrollingInterestMember_005204b3-6761-4fe6-9ca0-7212b153326c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_3ba0a082-3ad7-4e1c-9bdc-87edcbf4b7cd" xlink:to="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_3ddbaaee-beb1-4b8c-a02a-607605cb6bfb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_3ddbaaee-beb1-4b8c-a02a-607605cb6bfb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_d808036e-3c32-4f78-a7f5-113a61e245e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfitLoss"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_ProfitLoss_d808036e-3c32-4f78-a7f5-113a61e245e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_9c161910-19f2-495f-996d-224263ef6d87" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_9c161910-19f2-495f-996d-224263ef6d87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_1621a29f-1bdc-434d-900d-75d3e310725b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax_1621a29f-1bdc-434d-900d-75d3e310725b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_2901d5ca-f802-491c-8360-281f26d31446" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent_2901d5ca-f802-491c-8360-281f26d31446" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_86774571-7c46-4ef6-817f-314a47d5a2bb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_86774571-7c46-4ef6-817f-314a47d5a2bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_32da8d16-85ae-4666-a107-2ec76a4976bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_32da8d16-85ae-4666-a107-2ec76a4976bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityOther_664b0bb7-b341-4cbd-8466-de8960d9c5bd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityOther"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_StockholdersEquityOther_664b0bb7-b341-4cbd-8466-de8960d9c5bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_260e35e1-f998-44f8-b03d-c306691c48e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e3419dfc-e271-4319-bfb5-72591de59e21" xlink:to="loc_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_260e35e1-f998-44f8-b03d-c306691c48e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_6f088659-2a8f-44fb-9d5b-1853def15d97" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_6f088659-2a8f-44fb-9d5b-1853def15d97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProfitLoss_99378014-f4a3-43b7-bb72-264dd22283ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProfitLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_6f088659-2a8f-44fb-9d5b-1853def15d97" xlink:to="loc_us-gaap_ProfitLoss_99378014-f4a3-43b7-bb72-264dd22283ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_6f088659-2a8f-44fb-9d5b-1853def15d97" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_456849c3-63e0-48d4-b594-b59acfbba837" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_456849c3-63e0-48d4-b594-b59acfbba837" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetImpairmentCharges_a01a3842-7282-42e8-9881-47204236b343" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AssetImpairmentCharges"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_AssetImpairmentCharges_a01a3842-7282-42e8-9881-47204236b343" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome_0fc6eccc-b22c-437b-9323-81b7d6c80867" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome_0fc6eccc-b22c-437b-9323-81b7d6c80867" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_e0a1832f-dfcf-4678-ac80-c90a75ef8882" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_ShareBasedCompensation_e0a1832f-dfcf-4678-ac80-c90a75ef8882" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_bc1a00a8-c323-4bc8-b444-7d62b73e120a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_bc1a00a8-c323-4bc8-b444-7d62b73e120a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_8c00f468-e3be-4328-9a3a-bdf6b8d9d094" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_8c00f468-e3be-4328-9a3a-bdf6b8d9d094" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_262e17b4-9d05-4ff9-b9a9-7c6659cfac95" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_262e17b4-9d05-4ff9-b9a9-7c6659cfac95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_b542d687-795e-4e77-92ae-7fdfc13fd6e3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_GainLossOnSaleOfPropertyPlantEquipment_b542d687-795e-4e77-92ae-7fdfc13fd6e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax_d16fb8fc-daac-4215-bcce-d415c160cede" xlink:href="tti-20250331.xsd#tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax_d16fb8fc-daac-4215-bcce-d415c160cede" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNoncashIncomeExpense_0262a981-2dac-4ac6-856e-4766fa4e474f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNoncashIncomeExpense"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_OtherNoncashIncomeExpense_0262a981-2dac-4ac6-856e-4766fa4e474f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_266e8356-0b3c-4ec7-9f27-259d4e1b098a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_0561d7da-1359-4584-9baa-9ec27c04b04d" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_266e8356-0b3c-4ec7-9f27-259d4e1b098a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_d02d8cb2-ca91-4014-8ea5-569bc744b615" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_266e8356-0b3c-4ec7-9f27-259d4e1b098a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_d02d8cb2-ca91-4014-8ea5-569bc744b615" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_83566726-b2d6-44b8-8312-d1f840e41e2d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_266e8356-0b3c-4ec7-9f27-259d4e1b098a" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_83566726-b2d6-44b8-8312-d1f840e41e2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_b2e61e49-dc17-4d2f-b1b6-b034a908f535" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_266e8356-0b3c-4ec7-9f27-259d4e1b098a" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_b2e61e49-dc17-4d2f-b1b6-b034a908f535" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_6f48acb7-429f-4d4a-9b4b-bf164897dc58" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_266e8356-0b3c-4ec7-9f27-259d4e1b098a" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_6f48acb7-429f-4d4a-9b4b-bf164897dc58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_b46b0388-4ebb-4841-903e-a1b25d94f8dc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_266e8356-0b3c-4ec7-9f27-259d4e1b098a" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet_b46b0388-4ebb-4841-903e-a1b25d94f8dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_e45dd43a-7cec-4bd5-b561-ac0a1df838e7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_6f088659-2a8f-44fb-9d5b-1853def15d97" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_e45dd43a-7cec-4bd5-b561-ac0a1df838e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e0300084-aee3-4502-aad8-be8e88179f32" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e0300084-aee3-4502-aad8-be8e88179f32" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_44bf93d1-8336-4676-a8c3-ecb43af703e0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e0300084-aee3-4502-aad8-be8e88179f32" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_44bf93d1-8336-4676-a8c3-ecb43af703e0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_600096d3-1783-4911-bc41-e1c124fdeefe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e0300084-aee3-4502-aad8-be8e88179f32" xlink:to="loc_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments_600096d3-1783-4911-bc41-e1c124fdeefe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_e9e2d64f-d48b-4a3a-9546-fac32a7b64d4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e0300084-aee3-4502-aad8-be8e88179f32" xlink:to="loc_us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment_e9e2d64f-d48b-4a3a-9546-fac32a7b64d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_8f5b3adf-038b-4f0b-88ee-7bb70e7ee04d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsForProceedsFromOtherInvestingActivities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e0300084-aee3-4502-aad8-be8e88179f32" xlink:to="loc_us-gaap_PaymentsForProceedsFromOtherInvestingActivities_8f5b3adf-038b-4f0b-88ee-7bb70e7ee04d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_8155ab4e-dfee-4095-a72b-7092e9db839e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_e0300084-aee3-4502-aad8-be8e88179f32" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_8155ab4e-dfee-4095-a72b-7092e9db839e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_3e753986-29bb-4955-9959-19f131f30e0d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_3e753986-29bb-4955-9959-19f131f30e0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_541960fb-5792-445a-86c7-c234825035d2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_541960fb-5792-445a-86c7-c234825035d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FinanceLeasePrincipalPayments_b90d9737-74b9-41de-99fd-0e75e6833390" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FinanceLeasePrincipalPayments"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:to="loc_us-gaap_FinanceLeasePrincipalPayments_b90d9737-74b9-41de-99fd-0e75e6833390" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfDebtIssuanceCosts_9dce1201-4bdc-41d2-a916-9654a8c68191" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsOfDebtIssuanceCosts"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:to="loc_us-gaap_PaymentsOfDebtIssuanceCosts_9dce1201-4bdc-41d2-a916-9654a8c68191" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_7b356e41-52f4-4b2e-8e8c-fbf27459ff70" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:to="loc_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation_7b356e41-52f4-4b2e-8e8c-fbf27459ff70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_cdb8560e-83fa-4f07-b84f-cd6309d300be" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0c3e4ce6-0468-4d31-b191-4dd716f9fb50" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_cdb8560e-83fa-4f07-b84f-cd6309d300be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_23f53862-adac-43f0-a8cc-0abe0ae02512" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_23f53862-adac-43f0-a8cc-0abe0ae02512" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7a2d9b8e-1219-4129-af5a-d0dcf3db720f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_7a2d9b8e-1219-4129-af5a-d0dcf3db720f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_60c699fe-9251-45a0-b32a-dff51f320506" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_60c699fe-9251-45a0-b32a-dff51f320506" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_f152b373-9636-466d-aa41-3eb58007a8b9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_f152b373-9636-466d-aa41-3eb58007a8b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_a11e9341-677e-4006-b290-25383275c16a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_423c19ea-4007-406b-a629-11689be90e29" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_a11e9341-677e-4006-b290-25383275c16a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_54ee99c1-d7e2-4bbd-9920-556d608e996f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_a11e9341-677e-4006-b290-25383275c16a" xlink:to="loc_us-gaap_CashAndCashEquivalentsAtCarryingValue_54ee99c1-d7e2-4bbd-9920-556d608e996f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_bf8beab8-8581-47a7-b145-82674be082cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_a11e9341-677e-4006-b290-25383275c16a" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_bf8beab8-8581-47a7-b145-82674be082cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_977d4d17-9ba1-479c-9c9f-fc64e3a6d904" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract_a11e9341-677e-4006-b290-25383275c16a" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_977d4d17-9ba1-479c-9c9f-fc64e3a6d904" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/ConsolidatedStatementofEquityParenthetical" xlink:type="simple" xlink:href="tti-20250331.xsd#ConsolidatedStatementofEquityParenthetical"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/ConsolidatedStatementofEquityParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_05b58682-4c26-439c-bf27-86ba27146946" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_b62b622f-0911-471a-9420-26c73da14264" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_05b58682-4c26-439c-bf27-86ba27146946" xlink:to="loc_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax_b62b622f-0911-471a-9420-26c73da14264" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies" xlink:type="simple" xlink:href="tti-20250331.xsd#OrganizationBasisofPresentationandSignificantAccountingPolicies"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_a5dcdc28-0046-4c15-ab00-adefe8cbc7f2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SignificantAccountingPoliciesTextBlock_599521a7-b963-457c-a96e-54c72b07b73a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SignificantAccountingPoliciesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_a5dcdc28-0046-4c15-ab00-adefe8cbc7f2" xlink:to="loc_us-gaap_SignificantAccountingPoliciesTextBlock_599521a7-b963-457c-a96e-54c72b07b73a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/Revenue" xlink:type="simple" xlink:href="tti-20250331.xsd#Revenue"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/Revenue" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_341840d7-80bc-407a-b2b5-8e0df1b6dfed" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_e751f6de-18f3-419a-91d7-23d6d71339a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_341840d7-80bc-407a-b2b5-8e0df1b6dfed" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_e751f6de-18f3-419a-91d7-23d6d71339a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/Inventories" xlink:type="simple" xlink:href="tti-20250331.xsd#Inventories"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_b3a74846-8078-40dc-8891-3fbc9f790732" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_0fbc497c-c1b3-4ab4-a55a-7c7a7c04bfb7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_b3a74846-8078-40dc-8891-3fbc9f790732" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_0fbc497c-c1b3-4ab4-a55a-7c7a7c04bfb7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/Investments" xlink:type="simple" xlink:href="tti-20250331.xsd#Investments"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/Investments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_6c9979f6-399b-48ce-89de-4348eca946f7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTextBlock_353198f3-ed3f-460a-afaf-9f9176879eb1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_6c9979f6-399b-48ce-89de-4348eca946f7" xlink:to="loc_us-gaap_InvestmentTextBlock_353198f3-ed3f-460a-afaf-9f9176879eb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowings" xlink:type="simple" xlink:href="tti-20250331.xsd#LongTermDebtandOtherBorrowings"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/LongTermDebtandOtherBorrowings" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_fffebce2-2398-447f-9144-f6674485b736" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_f836a38f-f30e-4a24-b4d6-16e0cd529917" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_fffebce2-2398-447f-9144-f6674485b736" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_f836a38f-f30e-4a24-b4d6-16e0cd529917" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/CommitmentsandContingencies" xlink:type="simple" xlink:href="tti-20250331.xsd#CommitmentsandContingencies"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/CommitmentsandContingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_ead0a22f-a5f8-4812-8756-d695f3aed8d8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_0e43a16e-c04a-4fd7-a157-6c21512ce31e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_ead0a22f-a5f8-4812-8756-d695f3aed8d8" xlink:to="loc_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock_0e43a16e-c04a-4fd7-a157-6c21512ce31e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="tti-20250331.xsd#FairValueMeasurements"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_a07db97b-3e18-45d9-a091-83a703f90beb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresTextBlock_b2633949-f537-4b44-8c51-832ec39ee07b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_a07db97b-3e18-45d9-a091-83a703f90beb" xlink:to="loc_us-gaap_FairValueDisclosuresTextBlock_b2633949-f537-4b44-8c51-832ec39ee07b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/NetIncomeperShare" xlink:type="simple" xlink:href="tti-20250331.xsd#NetIncomeperShare"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/NetIncomeperShare" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_f701a67a-a1c4-4ab3-bee3-98db3d759a1b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_c008a90e-f719-4919-ad3a-86fba7168572" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_f701a67a-a1c4-4ab3-bee3-98db3d759a1b" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_c008a90e-f719-4919-ad3a-86fba7168572" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/IndustrySegments" xlink:type="simple" xlink:href="tti-20250331.xsd#IndustrySegments"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/IndustrySegments" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_cd319778-d3e1-4eca-8833-c03d084e9a1e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingDisclosureTextBlock_949d9daa-1311-4503-9e8f-40f5843900f8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_cd319778-d3e1-4eca-8833-c03d084e9a1e" xlink:to="loc_us-gaap_SegmentReportingDisclosureTextBlock_949d9daa-1311-4503-9e8f-40f5843900f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="tti-20250331.xsd#OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy_5d254b3c-0997-4944-8482-632321013aa6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy_5d254b3c-0997-4944-8482-632321013aa6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsPolicyTextBlock_d46860e4-1ebd-439c-9ed3-abfc30f4e5b0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsPolicyTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_us-gaap_DiscontinuedOperationsPolicyTextBlock_d46860e4-1ebd-439c-9ed3-abfc30f4e5b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_bfb99f6c-f7f4-4567-96ae-a38ad5a9389d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy_bfb99f6c-f7f4-4567-96ae-a38ad5a9389d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UseOfEstimates_e9f4f99b-aad8-43e4-8ea1-42ca8055df25" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UseOfEstimates"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_us-gaap_UseOfEstimates_e9f4f99b-aad8-43e4-8ea1-42ca8055df25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_MineralResourcesArrangementsPolicyTextBlock_434acea9-0603-42d2-b892-b2d7d1084857" xlink:href="tti-20250331.xsd#tti_MineralResourcesArrangementsPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_tti_MineralResourcesArrangementsPolicyTextBlock_434acea9-0603-42d2-b892-b2d7d1084857" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_7563c63e-231f-45de-93c3-c32e749859c3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock_7563c63e-231f-45de-93c3-c32e749859c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_31640be3-aef3-4eaf-9f34-04668449891b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueOfFinancialInstrumentsPolicy"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_us-gaap_FairValueOfFinancialInstrumentsPolicy_31640be3-aef3-4eaf-9f34-04668449891b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_3aa024f9-266c-47ea-a3e7-cf8af8601f30" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_7e9a741c-7a4f-4094-b749-c9a374d9e520" xlink:to="loc_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock_3aa024f9-266c-47ea-a3e7-cf8af8601f30" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesTables" xlink:type="simple" xlink:href="tti-20250331.xsd#OrganizationBasisofPresentationandSignificantAccountingPoliciesTables"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_833056c6-3688-447a-846a-2c1eb97b7817" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_fb824221-ffaa-48fc-80f6-729a725d6037" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_833056c6-3688-447a-846a-2c1eb97b7817" xlink:to="loc_us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock_fb824221-ffaa-48fc-80f6-729a725d6037" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/RevenueTables" xlink:type="simple" xlink:href="tti-20250331.xsd#RevenueTables"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/RevenueTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_9245cfe3-f59c-4852-a116-ca6dd0abc557" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_ab8629d8-6243-471f-a1a9-f84dc7714ae3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_9245cfe3-f59c-4852-a116-ca6dd0abc557" xlink:to="loc_us-gaap_DisaggregationOfRevenueTableTextBlock_ab8629d8-6243-471f-a1a9-f84dc7714ae3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InventoriesTables" xlink:type="simple" xlink:href="tti-20250331.xsd#InventoriesTables"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_64102a63-2ad7-4a58-9b27-d37b4b8b832e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_96e3c18c-3853-426c-ba95-873843183a02" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_64102a63-2ad7-4a58-9b27-d37b4b8b832e" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_96e3c18c-3853-426c-ba95-873843183a02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InvestmentsTables" xlink:type="simple" xlink:href="tti-20250331.xsd#InvestmentsTables"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/InvestmentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_589043f0-a93b-4838-890b-4b9bd734d35d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock_f8a26ac5-5fda-4030-aa0f-16d606105e77" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_589043f0-a93b-4838-890b-4b9bd734d35d" xlink:to="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock_f8a26ac5-5fda-4030-aa0f-16d606105e77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsTable" xlink:type="simple" xlink:href="tti-20250331.xsd#LongTermDebtandOtherBorrowingsTable"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsTable" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_eac18bbf-4c1f-4a2a-a8a4-87c29e84b0cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtTableTextBlock_a377ff1d-60ae-4b63-947e-f0cde8c8b5d2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfDebtTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_eac18bbf-4c1f-4a2a-a8a4-87c29e84b0cb" xlink:to="loc_us-gaap_ScheduleOfDebtTableTextBlock_a377ff1d-60ae-4b63-947e-f0cde8c8b5d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/FairValueMeasurementsTables" xlink:type="simple" xlink:href="tti-20250331.xsd#FairValueMeasurementsTables"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/FairValueMeasurementsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_b60608f4-2add-4733-8c35-f60e8e7bfad0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_937fcebf-a956-4fb8-8c90-f09f677a0424" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_b60608f4-2add-4733-8c35-f60e8e7bfad0" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock_937fcebf-a956-4fb8-8c90-f09f677a0424" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_6b3a256a-8b1b-4c24-8255-5756b3afc3aa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_b60608f4-2add-4733-8c35-f60e8e7bfad0" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock_6b3a256a-8b1b-4c24-8255-5756b3afc3aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/NetIncomeperShareTables" xlink:type="simple" xlink:href="tti-20250331.xsd#NetIncomeperShareTables"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/NetIncomeperShareTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_792ea450-8940-4b8a-817a-f5722e4e39aa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_e936b664-31e7-48c9-bdbc-3d1b17ad6c8a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_792ea450-8940-4b8a-817a-f5722e4e39aa" xlink:to="loc_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock_e936b664-31e7-48c9-bdbc-3d1b17ad6c8a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/IndustrySegmentsTables" xlink:type="simple" xlink:href="tti-20250331.xsd#IndustrySegmentsTables"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/IndustrySegmentsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_653e0152-14a9-4453-ab09-5efa9800b609" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_e1d7c614-def7-4efa-9755-473b0804e36c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_653e0152-14a9-4453-ab09-5efa9800b609" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock_e1d7c614-def7-4efa-9755-473b0804e36c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_ec58ce03-f9ee-4d38-a020-90ba93145767" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsPayableTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_ec58ce03-f9ee-4d38-a020-90ba93145767" xlink:to="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_81645762-15e9-4bde-98a8-9fad56f1c198" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_81645762-15e9-4bde-98a8-9fad56f1c198" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1d6b2025-53db-4d74-bf7e-ccb3c60a7b1c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis_81645762-15e9-4bde-98a8-9fad56f1c198" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1d6b2025-53db-4d74-bf7e-ccb3c60a7b1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_15daee6a-46d9-4f4b-973b-af1565a2360a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember_1d6b2025-53db-4d74-bf7e-ccb3c60a7b1c" xlink:to="loc_us-gaap_LetterOfCreditMember_15daee6a-46d9-4f4b-973b-af1565a2360a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementAxis_3fe97927-140d-4f94-a08d-7563840be090" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:to="loc_srt_RestatementAxis_3fe97927-140d-4f94-a08d-7563840be090" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RestatementDomain_065bb260-6eb5-4e42-84b5-835fb8e52b8d" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RestatementDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementAxis_3fe97927-140d-4f94-a08d-7563840be090" xlink:to="loc_srt_RestatementDomain_065bb260-6eb5-4e42-84b5-835fb8e52b8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_68f6a95b-793a-41b7-b45e-1cd1034da097" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RestatementDomain_065bb260-6eb5-4e42-84b5-835fb8e52b8d" xlink:to="loc_srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember_68f6a95b-793a-41b7-b45e-1cd1034da097" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DividendsPayableLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableTable_9e5d120f-dbc4-4668-980f-afd12f4466b8" xlink:to="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_2a383722-04f9-4d88-affb-4035eea50f1e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_NumberOfReportableSegments_2a383722-04f9-4d88-affb-4035eea50f1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_1ddf5a81-99c8-4031-93da-e46ebb6fca49" xlink:href="tti-20250331.xsd#tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_1ddf5a81-99c8-4031-93da-e46ebb6fca49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_23f1bb58-9622-42f0-90bd-ea7b71fdaa5c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_23f1bb58-9622-42f0-90bd-ea7b71fdaa5c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_e1e72683-bf44-42ae-9f26-2ef276ff9d94" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_EarningsPerShareBasic_e1e72683-bf44-42ae-9f26-2ef276ff9d94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_530effe1-bc84-4ea0-9d46-ca7bc49268ec" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_EarningsPerShareDiluted_530effe1-bc84-4ea0-9d46-ca7bc49268ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_82e4c685-1540-49ba-9c96-ada9c3221420" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue_82e4c685-1540-49ba-9c96-ada9c3221420" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_GrossBrineLeaseAcres_144ee57a-fb06-4acd-9cdd-560b23d0222a" xlink:href="tti-20250331.xsd#tti_GrossBrineLeaseAcres"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_tti_GrossBrineLeaseAcres_144ee57a-fb06-4acd-9cdd-560b23d0222a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RecapitalizationCosts_bf8a6483-795f-4db7-9cf2-1fe6053e040b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RecapitalizationCosts"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_RecapitalizationCosts_bf8a6483-795f-4db7-9cf2-1fe6053e040b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ForeignCurrencyTransactionGainLossRealized_f43d1d70-da4f-4956-8a2b-1c7170ddc10f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ForeignCurrencyTransactionGainLossRealized"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_ForeignCurrencyTransactionGainLossRealized_f43d1d70-da4f-4956-8a2b-1c7170ddc10f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_7773c362-295e-4a42-9b46-9923364b2ca4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DividendsPayableLineItems_b491826f-4e0f-4e84-b80b-0d2487a33fde" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax_7773c362-295e-4a42-9b46-9923364b2ca4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountingPoliciesAbstract_83db3e41-6bb1-4295-99fa-3411ad77bd6c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AccountingPoliciesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestPaidNet_58a2cb71-a2c4-4c27-9e48-10b391482607" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestPaidNet"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_83db3e41-6bb1-4295-99fa-3411ad77bd6c" xlink:to="loc_us-gaap_InterestPaidNet_58a2cb71-a2c4-4c27-9e48-10b391482607" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesPaid_ae20336e-6c83-48fc-888c-720481815f74" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeTaxesPaid"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_83db3e41-6bb1-4295-99fa-3411ad77bd6c" xlink:to="loc_us-gaap_IncomeTaxesPaid_ae20336e-6c83-48fc-888c-720481815f74" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid_b07e3f37-7039-47bf-ac87-072d8e1b7840" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalExpendituresIncurredButNotYetPaid"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AccountingPoliciesAbstract_83db3e41-6bb1-4295-99fa-3411ad77bd6c" xlink:to="loc_us-gaap_CapitalExpendituresIncurredButNotYetPaid_b07e3f37-7039-47bf-ac87-072d8e1b7840" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/RevenueAdditionalInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#RevenueAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/RevenueAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c8e66739-0731-437d-8c25-72e9e92d7cd3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerAssetNetCurrent_2fa12e35-d351-4036-a018-01d03dfd3d86" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerAssetNetCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c8e66739-0731-437d-8c25-72e9e92d7cd3" xlink:to="loc_us-gaap_ContractWithCustomerAssetNetCurrent_2fa12e35-d351-4036-a018-01d03dfd3d86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ContractWithCustomerLiability_30c321c6-badc-44ba-bc4b-a250ec0a232f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ContractWithCustomerLiability"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c8e66739-0731-437d-8c25-72e9e92d7cd3" xlink:to="loc_us-gaap_ContractWithCustomerLiability_30c321c6-badc-44ba-bc4b-a250ec0a232f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_ContractWithCustomerLiabilityRevenueRecognizedNet_6a32e53a-0928-4aaf-9848-9425262a017e" xlink:href="tti-20250331.xsd#tti_ContractWithCustomerLiabilityRevenueRecognizedNet"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c8e66739-0731-437d-8c25-72e9e92d7cd3" xlink:to="loc_tti_ContractWithCustomerLiabilityRevenueRecognizedNet_6a32e53a-0928-4aaf-9848-9425262a017e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfReportableSegments_dc3220c4-e421-4d44-9f5b-a9a3087d3665" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfReportableSegments"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_c8e66739-0731-437d-8c25-72e9e92d7cd3" xlink:to="loc_us-gaap_NumberOfReportableSegments_dc3220c4-e421-4d44-9f5b-a9a3087d3665" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#RevenueDisaggregationofRevenueDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_10c854bc-d0f4-4282-9e39-5ea1104e253f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_10c854bc-d0f4-4282-9e39-5ea1104e253f" xlink:to="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_063202f8-3186-474f-a668-7d4a971ae34b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_063202f8-3186-474f-a668-7d4a971ae34b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_063202f8-3186-474f-a668-7d4a971ae34b" xlink:to="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_CompletionFluidsProductsDivisionMember_fa4ad46f-bdb7-4157-8e83-f522bf1faae7" xlink:href="tti-20250331.xsd#tti_CompletionFluidsProductsDivisionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:to="loc_tti_CompletionFluidsProductsDivisionMember_fa4ad46f-bdb7-4157-8e83-f522bf1faae7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_WaterFlowbackServicesMember_7119fd87-59e0-45eb-9818-c020006aa221" xlink:href="tti-20250331.xsd#tti_WaterFlowbackServicesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_1ce76ec4-4aca-40be-b4f5-bb683b6061cb" xlink:to="loc_tti_WaterFlowbackServicesMember_7119fd87-59e0-45eb-9818-c020006aa221" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_StatementGeographicalAxis_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_StatementGeographicalAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:to="loc_srt_StatementGeographicalAxis_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_SegmentGeographicalDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_StatementGeographicalAxis_374f8312-c2fb-4ee1-89a8-69f8cbdb6ec3" xlink:to="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_dc3206d7-828e-43d5-a781-e2fab5e5983c" xlink:href="https://xbrl.sec.gov/country/2023/country-2023.xsd#country_US"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:to="loc_country_US_dc3206d7-828e-43d5-a781-e2fab5e5983c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NonUsMember_988880a8-d7a1-4127-aeb7-84554054e7ac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NonUsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_SegmentGeographicalDomain_c69e847a-5ecf-4a85-a49f-65c97fd35e5a" xlink:to="loc_us-gaap_NonUsMember_988880a8-d7a1-4127-aeb7-84554054e7ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisaggregationOfRevenueLineItems_fafdd555-e8b8-4272-8577-ea091cb49c6b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisaggregationOfRevenueLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueTable_c9ca82a2-da4d-4bd6-b503-2b78904eb667" xlink:to="loc_us-gaap_DisaggregationOfRevenueLineItems_fafdd555-e8b8-4272-8577-ea091cb49c6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_6ae86f09-4efc-4453-bf3d-ab80fa5b9bb9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisaggregationOfRevenueLineItems_fafdd555-e8b8-4272-8577-ea091cb49c6b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_6ae86f09-4efc-4453-bf3d-ab80fa5b9bb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InventoriesDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#InventoriesDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/InventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_0a9c77ab-b740-436e-a4df-45e05791218b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoods_bbdd217c-5c3b-4f66-97f0-adf0518fd0b3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryFinishedGoods"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_0a9c77ab-b740-436e-a4df-45e05791218b" xlink:to="loc_us-gaap_InventoryFinishedGoods_bbdd217c-5c3b-4f66-97f0-adf0518fd0b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterials_23f7c0f8-4ec2-46d0-85cc-dad86bf384db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryRawMaterials"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_0a9c77ab-b740-436e-a4df-45e05791218b" xlink:to="loc_us-gaap_InventoryRawMaterials_23f7c0f8-4ec2-46d0-85cc-dad86bf384db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherInventorySupplies_1be39e7c-32ab-4ad3-a82b-d5a0e7fef539" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherInventorySupplies"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_0a9c77ab-b740-436e-a4df-45e05791218b" xlink:to="loc_us-gaap_OtherInventorySupplies_1be39e7c-32ab-4ad3-a82b-d5a0e7fef539" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcess_2becba78-2d0b-415e-abf6-117e10e94a3b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryWorkInProcess"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_0a9c77ab-b740-436e-a4df-45e05791218b" xlink:to="loc_us-gaap_InventoryWorkInProcess_2becba78-2d0b-415e-abf6-117e10e94a3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_5d636c79-b21a-4eae-95ad-cc9e02449116" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_0a9c77ab-b740-436e-a4df-45e05791218b" xlink:to="loc_us-gaap_InventoryNet_5d636c79-b21a-4eae-95ad-cc9e02449116" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#InvestmentsScheduleofInvestmentsDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_ac12e1c0-607e-402d-b0a5-74cb87e482d3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_7ec5da33-5296-4302-ae2c-6fb0b46bb414" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_ac12e1c0-607e-402d-b0a5-74cb87e482d3" xlink:to="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_7ec5da33-5296-4302-ae2c-6fb0b46bb414" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_163b9711-793f-485c-9ce7-a52fcf501dec" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_7ec5da33-5296-4302-ae2c-6fb0b46bb414" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_163b9711-793f-485c-9ce7-a52fcf501dec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_163b9711-793f-485c-9ce7-a52fcf501dec" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_KodiakGasServicesInc.Member_fd9ab5c2-5110-4867-a4e2-4acb2662d541" xlink:href="tti-20250331.xsd#tti_KodiakGasServicesInc.Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:to="loc_tti_KodiakGasServicesInc.Member_fd9ab5c2-5110-4867-a4e2-4acb2662d541" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_StandardLithiumLtd.Member_8ba43936-57f8-4822-9d57-00e3ddc8d0cf" xlink:href="tti-20250331.xsd#tti_StandardLithiumLtd.Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:to="loc_tti_StandardLithiumLtd.Member_8ba43936-57f8-4822-9d57-00e3ddc8d0cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InvestmentsOtherMember_85781254-f4ab-454b-b15c-7331b920ec8d" xlink:href="tti-20250331.xsd#tti_InvestmentsOtherMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_60b7110f-7592-4806-b61c-d5bdbdf9b2d9" xlink:to="loc_tti_InvestmentsOtherMember_85781254-f4ab-454b-b15c-7331b920ec8d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_da7a17fd-7703-43ca-8393-e16bdaf9f99c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_7ec5da33-5296-4302-ae2c-6fb0b46bb414" xlink:to="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_da7a17fd-7703-43ca-8393-e16bdaf9f99c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNi_89ce8bd3-baeb-404c-9dc5-a3dd97cfba14" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesFvNi"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_da7a17fd-7703-43ca-8393-e16bdaf9f99c" xlink:to="loc_us-gaap_EquitySecuritiesFvNi_89ce8bd3-baeb-404c-9dc5-a3dd97cfba14" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#InvestmentsAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_e6735cb9-f9a8-4d70-a1b5-4da6ef89cf21" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_0137b9bd-0ea8-43dc-a52d-0368ef1da6fc" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract_e6735cb9-f9a8-4d70-a1b5-4da6ef89cf21" xlink:to="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_0137b9bd-0ea8-43dc-a52d-0368ef1da6fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bf1eab4b-8da8-4895-a666-cedafe90fde7" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_0137b9bd-0ea8-43dc-a52d-0368ef1da6fc" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bf1eab4b-8da8-4895-a666-cedafe90fde7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_8cc785cc-9ad0-4a9b-b73e-2d52626092c7" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bf1eab4b-8da8-4895-a666-cedafe90fde7" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_8cc785cc-9ad0-4a9b-b73e-2d52626092c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_KodiakGasServicesInc.Member_2e4c21e0-cfd0-461b-9af0-e499e428ebc5" xlink:href="tti-20250331.xsd#tti_KodiakGasServicesInc.Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_8cc785cc-9ad0-4a9b-b73e-2d52626092c7" xlink:to="loc_tti_KodiakGasServicesInc.Member_2e4c21e0-cfd0-461b-9af0-e499e428ebc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesTable_0137b9bd-0ea8-43dc-a52d-0368ef1da6fc" xlink:to="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi_e39b8761-3649-4d3e-8fcc-14246721b1da" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:to="loc_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi_e39b8761-3649-4d3e-8fcc-14246721b1da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainLossOnSaleOfInvestments_2b82bd76-1a6c-4ef7-bcd4-32e706893bc3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainLossOnSaleOfInvestments"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems_5cd0f948-6d8e-4065-8df9-3d47a15fb5db" xlink:to="loc_us-gaap_GainLossOnSaleOfInvestments_2b82bd76-1a6c-4ef7-bcd4-32e706893bc3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_d63a4551-f2b5-4454-9b21-0998b9add799" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_d63a4551-f2b5-4454-9b21-0998b9add799" xlink:to="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_19992911-c3c0-4852-a0c9-148e2ba30db5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_19992911-c3c0-4852-a0c9-148e2ba30db5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_994af406-e8b5-4d53-ae8b-9ebd3421ca6f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_19992911-c3c0-4852-a0c9-148e2ba30db5" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_994af406-e8b5-4d53-ae8b-9ebd3421ca6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_a3d35394-b223-4e16-af42-d22900428644" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_994af406-e8b5-4d53-ae8b-9ebd3421ca6f" xlink:to="loc_us-gaap_SecuredDebtMember_a3d35394-b223-4e16-af42-d22900428644" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_3f66f160-6eea-4803-bcb7-2d2661aa340e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:to="loc_us-gaap_CreditFacilityAxis_3f66f160-6eea-4803-bcb7-2d2661aa340e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_b4067046-07d7-4610-aafb-f8c5c947452e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_3f66f160-6eea-4803-bcb7-2d2661aa340e" xlink:to="loc_us-gaap_CreditFacilityDomain_b4067046-07d7-4610-aafb-f8c5c947452e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TermLoanMember_8fd197b5-d4b8-4408-a483-c2892b803a1c" xlink:href="tti-20250331.xsd#tti_TermLoanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_b4067046-07d7-4610-aafb-f8c5c947452e" xlink:to="loc_tti_TermLoanMember_8fd197b5-d4b8-4408-a483-c2892b803a1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_f2896269-b71c-470d-8ade-6e712f13c57c" xlink:to="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_abcfe08a-c39b-463e-9902-eaea770ed2e3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_abcfe08a-c39b-463e-9902-eaea770ed2e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet_6434d6ec-f355-40b3-9a85-1d448f9672e5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:to="loc_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet_6434d6ec-f355-40b3-9a85-1d448f9672e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnamortizedDebtIssuanceExpense_4e7e2c32-2cc8-4b58-9aaa-ea282c0f01d6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnamortizedDebtIssuanceExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_e09a4a21-6223-47f0-9d79-af0851f1fb44" xlink:to="loc_us-gaap_UnamortizedDebtIssuanceExpense_4e7e2c32-2cc8-4b58-9aaa-ea282c0f01d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#LongTermDebtandOtherBorrowingsAdditionalInformationDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_e1f438e9-4067-4a94-80c4-444563723898" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_e1f438e9-4067-4a94-80c4-444563723898" xlink:to="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_d6268f2d-33c5-41a7-b271-c74f2b35d923" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_d6268f2d-33c5-41a7-b271-c74f2b35d923" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_a20edbd9-080b-4289-af80-17a6dbd109bd" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_d6268f2d-33c5-41a7-b271-c74f2b35d923" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_a20edbd9-080b-4289-af80-17a6dbd109bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SecuredDebtMember_e0d4d6ca-b118-4fdc-a6da-13d8b461f3b5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SecuredDebtMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_a20edbd9-080b-4289-af80-17a6dbd109bd" xlink:to="loc_us-gaap_SecuredDebtMember_e0d4d6ca-b118-4fdc-a6da-13d8b461f3b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_4d2f8758-4014-47c3-bd48-e4625bf26768" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_CreditFacilityAxis_4d2f8758-4014-47c3-bd48-e4625bf26768" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_4d2f8758-4014-47c3-bd48-e4625bf26768" xlink:to="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_TermLoanMember_2c65b4b0-9342-4561-8c18-3ccbce68b139" xlink:href="tti-20250331.xsd#tti_TermLoanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_TermLoanMember_2c65b4b0-9342-4561-8c18-3ccbce68b139" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_AssetBasedCreditAgreementMember_1c211df2-3d59-4d6c-83ae-8adf03be4bce" xlink:href="tti-20250331.xsd#tti_AssetBasedCreditAgreementMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_AssetBasedCreditAgreementMember_1c211df2-3d59-4d6c-83ae-8adf03be4bce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SwedishCreditFacilityMember_934467e2-5788-47e4-be89-1c59b954749a" xlink:href="tti-20250331.xsd#tti_SwedishCreditFacilityMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_SwedishCreditFacilityMember_934467e2-5788-47e4-be89-1c59b954749a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_FinlandCreditAgreementMember_6a8d2c2f-aad7-4114-b093-2be8c64c6b92" xlink:href="tti-20250331.xsd#tti_FinlandCreditAgreementMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_bf357038-6817-4646-8da6-12e6ecd13ef1" xlink:to="loc_tti_FinlandCreditAgreementMember_6a8d2c2f-aad7-4114-b093-2be8c64c6b92" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_99bb9cc3-10bf-4dcf-a03e-45f07bde0548" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_DebtInstrumentAxis_99bb9cc3-10bf-4dcf-a03e-45f07bde0548" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_99bb9cc3-10bf-4dcf-a03e-45f07bde0548" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DelayedDrawTermLoanDDTLMember_22d4bdae-a439-4484-9022-0d334436fc57" xlink:href="tti-20250331.xsd#tti_DelayedDrawTermLoanDDTLMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:to="loc_tti_DelayedDrawTermLoanDDTLMember_22d4bdae-a439-4484-9022-0d334436fc57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LetterOfCreditMember_955dfc6b-7b53-4be7-b084-4041d7528ba8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LetterOfCreditMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:to="loc_us-gaap_LetterOfCreditMember_955dfc6b-7b53-4be7-b084-4041d7528ba8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SinglineLoanMember_0b990dce-3894-429b-9378-9b0e0bbc3d95" xlink:href="tti-20250331.xsd#tti_SinglineLoanMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_a82de0fc-5f8d-42ad-9870-8f42152ead87" xlink:to="loc_tti_SinglineLoanMember_0b990dce-3894-429b-9378-9b0e0bbc3d95" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateAxis_741be860-ea10-4d8d-8b75-546fcc814ac4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_VariableRateAxis_741be860-ea10-4d8d-8b75-546fcc814ac4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_VariableRateDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateAxis_741be860-ea10-4d8d-8b75-546fcc814ac4" xlink:to="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SecuredOvernightFinancingRateSOFRMember_6e33bbd3-3182-44a1-851c-7901067d4e52" xlink:href="tti-20250331.xsd#tti_SecuredOvernightFinancingRateSOFRMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_tti_SecuredOvernightFinancingRateSOFRMember_6e33bbd3-3182-44a1-851c-7901067d4e52" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BaseRateMember_25039545-1b57-4bcf-9c89-2792af94af25" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_BaseRateMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_us-gaap_BaseRateMember_25039545-1b57-4bcf-9c89-2792af94af25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_FedFundsEffectiveRateMember_e9abf778-bc72-4f49-b550-c6713d31689d" xlink:href="tti-20250331.xsd#tti_FedFundsEffectiveRateMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_tti_FedFundsEffectiveRateMember_e9abf778-bc72-4f49-b550-c6713d31689d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember_5eb2e13c-b8be-4d28-9580-df24f3d48dd5" xlink:href="tti-20250331.xsd#tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_VariableRateDomain_37885ee1-ada2-482a-8155-29fb58c76dd6" xlink:to="loc_tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember_5eb2e13c-b8be-4d28-9580-df24f3d48dd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_40293ae7-4059-4ecd-90eb-3e40d7587202" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_srt_RangeAxis_40293ae7-4059-4ecd-90eb-3e40d7587202" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_40293ae7-4059-4ecd-90eb-3e40d7587202" xlink:to="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_d6517cf9-30f9-45c5-b2ee-8ed9a409aa38" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:to="loc_srt_MinimumMember_d6517cf9-30f9-45c5-b2ee-8ed9a409aa38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_3587e8b3-cc34-4b82-956c-89d6f94b1c4f" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_99dfdf2d-6546-4a32-83db-857c0238e9ce" xlink:to="loc_srt_MaximumMember_3587e8b3-cc34-4b82-956c-89d6f94b1c4f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_1b2e42c0-a8a7-4d3e-9fd4-c84bef32f84c" xlink:to="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0bb933e-7074-41ca-9059-aba28f3367e9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1_c0bb933e-7074-41ca-9059-aba28f3367e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_e30b6d65-6a3b-4c10-9bb9-1e7a59d8fd00" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_e30b6d65-6a3b-4c10-9bb9-1e7a59d8fd00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_300c294e-8f53-4aff-ac9f-2d345a460e37" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_300c294e-8f53-4aff-ac9f-2d345a460e37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_68e2a617-6048-4658-ab2c-9d3e764cd683" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_68e2a617-6048-4658-ab2c-9d3e764cd683" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCovenantLeverageRatioMaximum_9db9ff89-5274-4e1e-99ab-fca1a50bee3a" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCovenantLeverageRatioMaximum"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_DebtInstrumentCovenantLeverageRatioMaximum_9db9ff89-5274-4e1e-99ab-fca1a50bee3a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCovenantLiquidityMinimumAmount_54536aaf-15e8-4673-a134-17e63c848b0c" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCovenantLiquidityMinimumAmount"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_DebtInstrumentCovenantLiquidityMinimumAmount_54536aaf-15e8-4673-a134-17e63c848b0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCredit_94c2e540-a2d5-4f78-871b-2d51eefd48b2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCredit"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCredit_94c2e540-a2d5-4f78-871b-2d51eefd48b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LettersOfCreditOutstandingAmount_34cf83f2-da3d-4afc-ae28-d5fc4e8bfa02" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LettersOfCreditOutstandingAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LettersOfCreditOutstandingAmount_34cf83f2-da3d-4afc-ae28-d5fc4e8bfa02" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherDeferredCostsNet_e219681e-825c-4692-bb67-7e4948095292" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherDeferredCostsNet"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_OtherDeferredCostsNet_e219681e-825c-4692-bb67-7e4948095292" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_LineOfCreditFacilityAdditionalBorrowingCapacity_31050262-87e5-4f8c-b073-73faddedd4b9" xlink:href="tti-20250331.xsd#tti_LineOfCreditFacilityAdditionalBorrowingCapacity"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_LineOfCreditFacilityAdditionalBorrowingCapacity_31050262-87e5-4f8c-b073-73faddedd4b9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_3d46189b-2694-4270-9a42-942c3635674a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_3d46189b-2694-4270-9a42-942c3635674a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries_144aca94-d52b-4dd0-b3d9-b54e9bb3adf9" xlink:href="tti-20250331.xsd#tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries_144aca94-d52b-4dd0-b3d9-b54e9bb3adf9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_05c0e931-b63a-4c78-9ded-53964fd1858f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_5ca0e8dd-eccb-4755-8e9b-de1793a8ff51" xlink:to="loc_us-gaap_DebtInstrumentTerm_05c0e931-b63a-4c78-9ded-53964fd1858f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/CommitmentsandContingenciesDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#CommitmentsandContingenciesDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/CommitmentsandContingenciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_6b32b07d-3dd0-44b6-bebb-bd1b98a043c3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_6b32b07d-3dd0-44b6-bebb-bd1b98a043c3" xlink:to="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_d6054711-246c-45b6-9b81-5c6892667115" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_d6054711-246c-45b6-9b81-5c6892667115" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis_d6054711-246c-45b6-9b81-5c6892667115" xlink:to="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoriesMember_0f3ae52e-35c0-4006-aac9-6d561cd03c85" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InventoriesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:to="loc_us-gaap_InventoriesMember_0f3ae52e-35c0-4006-aac9-6d561cd03c85" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalAdditionsMember_d4caf6fc-4c95-4546-9552-e094524d6e0e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CapitalAdditionsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain_5b2a6ac7-c9f8-4171-86ce-b851038ac589" xlink:to="loc_us-gaap_CapitalAdditionsMember_d4caf6fc-4c95-4546-9552-e094524d6e0e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_8363e65d-777c-481c-8d35-77a61d3f2c82" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_8363e65d-777c-481c-8d35-77a61d3f2c82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_8363e65d-777c-481c-8d35-77a61d3f2c82" xlink:to="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_CompletionFluidsProductsDivisionMember_8d5fb156-d62b-4c7c-a239-22a3b21f2827" xlink:href="tti-20250331.xsd#tti_CompletionFluidsProductsDivisionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:to="loc_tti_CompletionFluidsProductsDivisionMember_8d5fb156-d62b-4c7c-a239-22a3b21f2827" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_WaterFlowbackServicesMember_7dc5ff29-0d33-4248-9d7e-ab659fc5cb9b" xlink:href="tti-20250331.xsd#tti_WaterFlowbackServicesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_6a00079b-9bfa-4393-b40e-57715f271765" xlink:to="loc_tti_WaterFlowbackServicesMember_7dc5ff29-0d33-4248-9d7e-ab659fc5cb9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationAxis_e027b6eb-33db-4843-8a3f-04bb9855d2c2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_DisposalGroupClassificationAxis_e027b6eb-33db-4843-8a3f-04bb9855d2c2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupClassificationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationAxis_e027b6eb-33db-4843-8a3f-04bb9855d2c2" xlink:to="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_1c6be7e0-4690-4238-bb6c-7353654f082a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DiscontinuedOperationsDisposedOfBySaleMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:to="loc_us-gaap_DiscontinuedOperationsDisposedOfBySaleMember_1c6be7e0-4690-4238-bb6c-7353654f082a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_4aa6e257-7ba7-4792-87ec-18b6c3e4a61f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupClassificationDomain_35bbbcb5-d99d-4692-93f2-dad03cbee039" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_4aa6e257-7ba7-4792-87ec-18b6c3e4a61f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis_2c02a5e5-8a96-475f-b70a-c4e88b4c3beb" xlink:to="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_OffshoreDivisionMember_7cd500ad-5be3-4404-baa6-ef4d89126965" xlink:href="tti-20250331.xsd#tti_OffshoreDivisionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:to="loc_tti_OffshoreDivisionMember_7cd500ad-5be3-4404-baa6-ef4d89126965" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_MaritechMember_1f60fae1-f917-4576-823d-9ab4565c4243" xlink:href="tti-20250331.xsd#tti_MaritechMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain_e7f17f72-58d5-41fa-88d7-f4270c65b1ba" xlink:to="loc_tti_MaritechMember_1f60fae1-f917-4576-823d-9ab4565c4243" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_d6025d70-6a4e-4483-aa32-548bfee1f3f5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_PlanNameAxis_d6025d70-6a4e-4483-aa32-548bfee1f3f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_d6025d70-6a4e-4483-aa32-548bfee1f3f5" xlink:to="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InitialBondsMember_441ef124-fef3-44cf-b73e-9098a99377da" xlink:href="tti-20250331.xsd#tti_InitialBondsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:to="loc_tti_InitialBondsMember_441ef124-fef3-44cf-b73e-9098a99377da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InterimReplacementBondsMember_8364a922-ae52-4783-9577-b3ec7038e7e3" xlink:href="tti-20250331.xsd#tti_InterimReplacementBondsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_7b96f84e-0495-4169-a6a1-79a08e9f1fa3" xlink:to="loc_tti_InterimReplacementBondsMember_8364a922-ae52-4783-9577-b3ec7038e7e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis_881a9fc7-e2f7-4b08-8c99-f13ef03545f5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesByNatureOfContingencyAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis_881a9fc7-e2f7-4b08-8c99-f13ef03545f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyNatureDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesByNatureOfContingencyAxis_881a9fc7-e2f7-4b08-8c99-f13ef03545f5" xlink:to="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDiscontinuedOperationsMember_13fc3719-e5e0-4aa5-a8e8-05dec0ef31ce" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDiscontinuedOperationsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:to="loc_us-gaap_SegmentDiscontinuedOperationsMember_13fc3719-e5e0-4aa5-a8e8-05dec0ef31ce" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SuretyBondMember_bbfacfd8-4c60-4044-84ae-9b5b4f11c938" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SuretyBondMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingencyNatureDomain_7519fbad-bfea-4926-b91a-f5d342e9fe07" xlink:to="loc_us-gaap_SuretyBondMember_bbfacfd8-4c60-4044-84ae-9b5b4f11c938" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_dei_LegalEntityAxis_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_36fda058-9f83-4678-a786-89b70730b498" xlink:href="https://xbrl.sec.gov/dei/2023/dei-2023.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_d96af34f-eb7c-48a0-b2b2-f7b225c18bf6" xlink:to="loc_dei_EntityDomain_36fda058-9f83-4678-a786-89b70730b498" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_MaritechMember_6a613648-8667-4e5b-aee9-5d979875e98d" xlink:href="tti-20250331.xsd#tti_MaritechMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_36fda058-9f83-4678-a786-89b70730b498" xlink:to="loc_tti_MaritechMember_6a613648-8667-4e5b-aee9-5d979875e98d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_edb13809-12f4-4abd-9886-fedb3299f78f" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeAxis"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_srt_RangeAxis_edb13809-12f4-4abd-9886-fedb3299f78f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_edb13809-12f4-4abd-9886-fedb3299f78f" xlink:to="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_4880a126-5657-45f3-ad72-0c7540daed89" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:to="loc_srt_MinimumMember_4880a126-5657-45f3-ad72-0c7540daed89" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_766cf7f9-d175-4a1e-8473-32d3604cafe4" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_bff9bb91-9db4-4032-8a58-652f8155767a" xlink:to="loc_srt_MaximumMember_766cf7f9-d175-4a1e-8473-32d3604cafe4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingenciesLineItems"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_08e460ad-ac09-4fab-b10f-f495f76927e1" xlink:to="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_94390747-b7b8-4eb6-bd7f-90e192e8d61a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount_94390747-b7b8-4eb6-bd7f-90e192e8d61a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_4f276b45-1dec-4839-a239-3f917c7b97ac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear_4f276b45-1dec-4839-a239-3f917c7b97ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_c16ab999-8baa-41bf-8a1c-e884bda0a9f9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary_c16ab999-8baa-41bf-8a1c-e884bda0a9f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_d3ff83e7-82e8-4c7d-9f73-6b65b3ba57c5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary_d3ff83e7-82e8-4c7d-9f73-6b65b3ba57c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_e1c5ded2-a169-4502-8786-65909099b115" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary_e1c5ded2-a169-4502-8786-65909099b115" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive_cc87d6e0-b67d-47ca-bb03-20fc3fb18c28" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive_cc87d6e0-b67d-47ca-bb03-20fc3fb18c28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds_30db7cfd-2828-48e3-bb60-d0f93d4e4d79" xlink:href="tti-20250331.xsd#tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds_30db7cfd-2828-48e3-bb60-d0f93d4e4d79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyEstimateOfPossibleLoss_6a58cca2-06dd-45d1-969e-b3dea2c1e422" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyEstimateOfPossibleLoss"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_LossContingencyEstimateOfPossibleLoss_6a58cca2-06dd-45d1-969e-b3dea2c1e422" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyReceivableProceeds_bcbf20f8-0815-4097-aad0-638188e195a4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_LossContingencyReceivableProceeds"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_us-gaap_LossContingencyReceivableProceeds_bcbf20f8-0815-4097-aad0-638188e195a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_e56991ef-f14d-4274-aad3-da75e22ef147" xlink:href="tti-20250331.xsd#tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_d410ca40-defd-46e7-8fbf-814d6d498976" xlink:to="loc_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense_e56991ef-f14d-4274-aad3-da75e22ef147" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#FairValueMeasurementsChangeinOurInvestmentsDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_ab97eb64-ddca-45ac-a4a0-ac0ee5dca2ba" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_ab97eb64-ddca-45ac-a4a0-ac0ee5dca2ba" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_7ef5f071-eeec-4191-92f8-c0599d6c5488" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_7ef5f071-eeec-4191-92f8-c0599d6c5488" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_7ef5f071-eeec-4191-92f8-c0599d6c5488" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_c6e349e3-df10-446b-a5b1-4038f078c21d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_c6e349e3-df10-446b-a5b1-4038f078c21d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_ac8f5e0f-722e-47f8-a022-0b1418436f26" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_ac8f5e0f-722e-47f8-a022-0b1418436f26" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_76322d50-e1ad-44e7-b740-165f8c181eb6" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_88b608ac-62af-464d-a7d1-faf2797e5bc2" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_76322d50-e1ad-44e7-b740-165f8c181eb6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByAssetClassAxis_e1761324-e514-4d91-88a1-b0fc11e5c0c8" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByAssetClassAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:to="loc_us-gaap_FairValueByAssetClassAxis_e1761324-e514-4d91-88a1-b0fc11e5c0c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_3a4dabe1-eeca-4f45-a307-3b2f879669b4" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByAssetClassAxis_e1761324-e514-4d91-88a1-b0fc11e5c0c8" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_3a4dabe1-eeca-4f45-a307-3b2f879669b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InvestmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain_3a4dabe1-eeca-4f45-a307-3b2f879669b4" xlink:to="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesMember_7af27ca5-1d5b-4241-98d5-c1cf2acc55e2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:to="loc_us-gaap_EquitySecuritiesMember_7af27ca5-1d5b-4241-98d5-c1cf2acc55e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RightsMember_3964319a-ec3c-4127-bce2-a6e302174cbf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RightsMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:to="loc_us-gaap_RightsMember_3964319a-ec3c-4127-bce2-a6e302174cbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConvertibleDebtSecuritiesMember_f80d714b-b853-4fa6-be46-0deed038f079" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ConvertibleDebtSecuritiesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentsMember_a35bd2f9-bbc2-4ef4-b1a9-485c6ac965c9" xlink:to="loc_us-gaap_ConvertibleDebtSecuritiesMember_f80d714b-b853-4fa6-be46-0deed038f079" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_87791635-c5f8-4201-a73c-1c5d69a870d3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable_e4ad0728-06b6-48ee-80fd-5f71414befb5" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_87791635-c5f8-4201-a73c-1c5d69a870d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems_87791635-c5f8-4201-a73c-1c5d69a870d3" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_77ed2dae-7dcc-49b6-bff2-b381b901f6bf" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_77ed2dae-7dcc-49b6-bff2-b381b901f6bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales_9b6cbc83-2433-40bc-9dd8-05f8632442ee" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales_9b6cbc83-2433-40bc-9dd8-05f8632442ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_46d116b9-536a-484d-9e22-dc3c133ddb2c" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3_46d116b9-536a-484d-9e22-dc3c133ddb2c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss_478c5a99-2e60-4555-974d-3f1653d0e088" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss_478c5a99-2e60-4555-974d-3f1653d0e088" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_568d4d70-d7f9-4535-b8e6-8c363b82f5f2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward_37569202-459d-45b2-a452-9a730bf44fec" xlink:to="loc_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue_568d4d70-d7f9-4535-b8e6-8c363b82f5f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueDisclosuresAbstract_83a842f5-4f28-47ce-81c5-3c421ca8df5e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueDisclosuresAbstract_83a842f5-4f28-47ce-81c5-3c421ca8df5e" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_b2d027ad-8c9a-4b7a-8abb-2808b126f85e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_b2d027ad-8c9a-4b7a-8abb-2808b126f85e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_b2d027ad-8c9a-4b7a-8abb-2808b126f85e" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_69e8f4bd-0869-4dec-8d4d-89cd8415a760" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_69e8f4bd-0869-4dec-8d4d-89cd8415a760" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_5628c127-ba33-4227-ad8b-11893509dad0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_5628c127-ba33-4227-ad8b-11893509dad0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_fa8f7860-0e5b-4e76-90dc-9c5c0f3afa28" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_e6c3ed11-c2d1-4127-a261-90c4f4a3b156" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_fa8f7860-0e5b-4e76-90dc-9c5c0f3afa28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bd6f0c42-e283-4273-808d-fb0f64f516b7" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:to="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bd6f0c42-e283-4273-808d-fb0f64f516b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_EquityMethodInvesteeNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis_bd6f0c42-e283-4273-808d-fb0f64f516b7" xlink:to="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_KodiakGasServicesInc.Member_33545caa-25dd-47b5-adb7-c8b79f44a863" xlink:href="tti-20250331.xsd#tti_KodiakGasServicesInc.Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:to="loc_tti_KodiakGasServicesInc.Member_33545caa-25dd-47b5-adb7-c8b79f44a863" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_StandardLithiumLtd.Member_99812e0f-8548-489d-b57f-1b5b57011658" xlink:href="tti-20250331.xsd#tti_StandardLithiumLtd.Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:to="loc_tti_StandardLithiumLtd.Member_99812e0f-8548-489d-b57f-1b5b57011658" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_InvestmentsOtherMember_de4604c0-e149-4af4-838b-1acd283449f2" xlink:href="tti-20250331.xsd#tti_InvestmentsOtherMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_EquityMethodInvesteeNameDomain_e8697a7f-21d5-4b0d-9b92-1176e838cb23" xlink:to="loc_tti_InvestmentsOtherMember_de4604c0-e149-4af4-838b-1acd283449f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_96c60555-fde4-4452-86cd-6414010aea82" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable_062864c4-7dd7-435c-a810-00f245bc36f7" xlink:to="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_96c60555-fde4-4452-86cd-6414010aea82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquitySecuritiesFvNi_76748e6e-de58-4e45-a383-cb63e86aee57" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EquitySecuritiesFvNi"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems_96c60555-fde4-4452-86cd-6414010aea82" xlink:to="loc_us-gaap_EquitySecuritiesFvNi_76748e6e-de58-4e45-a383-cb63e86aee57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/NetIncomeperShareDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#NetIncomeperShareDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/NetIncomeperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_19c3a592-07c1-470f-a2d3-e3dcbe1c89b7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_98fab031-aa4e-4b81-8a09-b5d2422ed1ac" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_19c3a592-07c1-470f-a2d3-e3dcbe1c89b7" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_98fab031-aa4e-4b81-8a09-b5d2422ed1ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_76295bec-c9da-441d-9d0c-c734836bfbe2" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_98fab031-aa4e-4b81-8a09-b5d2422ed1ac" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_76295bec-c9da-441d-9d0c-c734836bfbe2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_3455a4eb-fd22-4996-9e69-adda566d24e7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_98fab031-aa4e-4b81-8a09-b5d2422ed1ac" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_3455a4eb-fd22-4996-9e69-adda566d24e7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a92b9bf7-d2fd-4f00-8f2e-113a9f4199a1" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract_98fab031-aa4e-4b81-8a09-b5d2422ed1ac" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_a92b9bf7-d2fd-4f00-8f2e-113a9f4199a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/IndustrySegmentsAdditionalDetailsDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#IndustrySegmentsAdditionalDetailsDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/IndustrySegmentsAdditionalDetailsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_c4bd0c90-a3e6-41cb-800f-6ad635efefbe" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NumberOfOperatingSegments_ff3f4b6a-75f8-4bba-b396-03d45a2718f3" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NumberOfOperatingSegments"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_c4bd0c90-a3e6-41cb-800f-6ad635efefbe" xlink:to="loc_us-gaap_NumberOfOperatingSegments_ff3f4b6a-75f8-4bba-b396-03d45a2718f3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails" xlink:type="simple" xlink:href="tti-20250331.xsd#IndustrySegmentsScheduleofSegmentFinancialInformationDetails"/>
  <link:presentationLink xlink:role="http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingAbstract_131b6ec2-672a-4f55-9759-4669a0ca9c8d" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingAbstract_131b6ec2-672a-4f55-9759-4669a0ca9c8d" xlink:to="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsAxis_95f37cc0-1d10-4e15-a65a-c7a504709675" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:to="loc_srt_ConsolidationItemsAxis_95f37cc0-1d10-4e15-a65a-c7a504709675" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:href="https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd#srt_ConsolidationItemsDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsAxis_95f37cc0-1d10-4e15-a65a-c7a504709675" xlink:to="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingSegmentsMember_20f481c0-49e9-4be0-a963-50ceef845b0b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OperatingSegmentsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:to="loc_us-gaap_OperatingSegmentsMember_20f481c0-49e9-4be0-a963-50ceef845b0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CorporateNonSegmentMember_e876b33c-f077-44d3-ac22-93bc9e0b7a8f" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CorporateNonSegmentMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ConsolidationItemsDomain_b21bf048-0149-4545-a144-ae4e080b9856" xlink:to="loc_us-gaap_CorporateNonSegmentMember_e876b33c-f077-44d3-ac22-93bc9e0b7a8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementBusinessSegmentsAxis_25ccf139-98f5-4cac-b581-c863bf1a5915" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StatementBusinessSegmentsAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:to="loc_us-gaap_StatementBusinessSegmentsAxis_25ccf139-98f5-4cac-b581-c863bf1a5915" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementBusinessSegmentsAxis_25ccf139-98f5-4cac-b581-c863bf1a5915" xlink:to="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_CompletionFluidsProductsDivisionMember_b5c53c7e-d5a9-4441-91b7-070ea8144bd6" xlink:href="tti-20250331.xsd#tti_CompletionFluidsProductsDivisionMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:to="loc_tti_CompletionFluidsProductsDivisionMember_b5c53c7e-d5a9-4441-91b7-070ea8144bd6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_WaterFlowbackServicesMember_5ac72688-caef-40d4-9b1f-a0cf0576cd84" xlink:href="tti-20250331.xsd#tti_WaterFlowbackServicesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentDomain_eb495fee-4ff7-4840-ae5f-f9d142da5992" xlink:to="loc_tti_WaterFlowbackServicesMember_5ac72688-caef-40d4-9b1f-a0cf0576cd84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_SegmentReportingInformationLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable_f61fb96b-8f46-4904-9068-a13cb08d8962" xlink:to="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_55f62a8d-d7ad-4e3f-b346-8983900d41aa" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax_55f62a8d-d7ad-4e3f-b346-8983900d41aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_095c5e00-e26a-42e3-877e-2a98ca85c97b" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_095c5e00-e26a-42e3-877e-2a98ca85c97b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_tti_DepreciationDepletionAmortizationAndAccretion_34d2d6fc-5ac9-45cc-9828-24716ddf99a0" xlink:href="tti-20250331.xsd#tti_DepreciationDepletionAmortizationAndAccretion"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_tti_DepreciationDepletionAmortizationAndAccretion_34d2d6fc-5ac9-45cc-9828-24716ddf99a0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_da1c4782-d668-47e0-91f4-949837a485fb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ImpairmentOfLongLivedAssetsHeldForUse"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse_da1c4782-d668-47e0-91f4-949837a485fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GeneralAndAdministrativeExpense_110fc758-bd63-4aa1-91c8-4fb010e532f7" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GeneralAndAdministrativeExpense"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_GeneralAndAdministrativeExpense_110fc758-bd63-4aa1-91c8-4fb010e532f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestIncomeExpenseNet_52e42684-1081-436f-8120-02fcf5b1dc9a" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_InterestIncomeExpenseNet"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_InterestIncomeExpenseNet_52e42684-1081-436f-8120-02fcf5b1dc9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_707a7404-9654-48e0-acf6-263c69c938c5" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_GainsLossesOnExtinguishmentOfDebt"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_GainsLossesOnExtinguishmentOfDebt_707a7404-9654-48e0-acf6-263c69c938c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherNonoperatingIncomeExpense_9db85e48-14df-457a-8aea-95f5a84f1c19" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_OtherNonoperatingIncomeExpense"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_OtherNonoperatingIncomeExpense_9db85e48-14df-457a-8aea-95f5a84f1c19" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_53e8309e-b822-468f-9fe8-2577d05bffc0" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_53e8309e-b822-468f-9fe8-2577d05bffc0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquireProductiveAssets_78e11ee8-c0d8-413e-830c-96ae224bfbcb" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_PaymentsToAcquireProductiveAssets"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_PaymentsToAcquireProductiveAssets_78e11ee8-c0d8-413e-830c-96ae224bfbcb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_da30dcb8-385a-484c-b0e5-3968bd0c864e" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_Assets"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SegmentReportingInformationLineItems_48f915c8-e947-412d-926e-48152045cc3b" xlink:to="loc_us-gaap_Assets_da30dcb8-385a-484c-b0e5-3968bd0c864e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#AwardTimingDisclosure"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgDiscLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgDiscLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiDiscTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgMnpiDiscTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMethodTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgMethodTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgPredtrmndFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgPredtrmndFlag"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgPredtrmndFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgMnpiCnsdrdFlag"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgMnpiCnsdrdFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardTmgHowMnpiCnsdrdTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardTmgHowMnpiCnsdrdTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MnpiDiscTimedForCompValFlag"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_MnpiDiscTimedForCompValFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTableTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardsCloseToMnpiDiscTableTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscTable"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardsCloseToMnpiDiscTable" xlink:to="loc_us-gaap_AwardTypeAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeStockOptionMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_EmployeeStockOptionMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_EmployeeStockOptionMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_StockAppreciationRightsSARSMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="loc_us-gaap_StockAppreciationRightsSARSMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardsCloseToMnpiDiscIndName"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardsCloseToMnpiDiscIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardUndrlygSecuritiesAmt"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardUndrlygSecuritiesAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardExrcPrice" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardExrcPrice"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardExrcPrice" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AwardGrantDateFairValue" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AwardGrantDateFairValue"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_AwardGrantDateFairValue" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_UndrlygSecurityMktPriceChngPct"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AwardTmgDiscLineItems" xlink:to="loc_ecd_UndrlygSecurityMktPriceChngPct" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ErrCompDisclosure"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RecoveryOfErrCompDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompRecoveryTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompRecoveryTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ErrCompRecoveryTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDateAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDateAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_ErrCompRecoveryTable" xlink:to="loc_ecd_RestatementDateAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_ErrCompRecoveryTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonNeosMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonNeosMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AllIndividualsMember" xlink:to="loc_ecd_NonNeosMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDeterminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDeterminationDate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_RestatementDeterminationDate" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompAmt"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_AggtErrCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ErrCompAnalysisTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ErrCompAnalysisTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ErrCompAnalysisTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_StkPrcOrTsrEstimationMethodTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_StkPrcOrTsrEstimationMethodTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingAggtErrCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingAggtErrCompAmt"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_OutstandingAggtErrCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AggtErrCompNotYetDeterminedTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_AggtErrCompNotYetDeterminedTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryIndName"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryIndName"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_OutstandingRecoveryIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OutstandingRecoveryCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OutstandingRecoveryCompAmt"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_OutstandingRecoveryCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_RestatementDoesNotRequireRecoveryTextBlock"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_RecoveryOfErrCompDisclosureLineItems" xlink:to="loc_ecd_RestatementDoesNotRequireRecoveryTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/PvpDisclosure" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#PvpDisclosure"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/PvpDisclosure" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PayVsPerformanceDisclosureLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PvpTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ExecutiveCategoryAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ExecutiveCategoryAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_ExecutiveCategoryAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllExecutiveCategoriesMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllExecutiveCategoriesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_ExecutiveCategoryAxis" xlink:to="loc_ecd_AllExecutiveCategoriesMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AllExecutiveCategoriesMember" xlink:to="loc_ecd_PeoMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AllExecutiveCategoriesMember" xlink:to="loc_ecd_NonPeoNeoMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_AdjToCompAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllAdjToCompMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllAdjToCompMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_AdjToCompAxis" xlink:to="loc_ecd_AllAdjToCompMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PvpTable" xlink:to="loc_ecd_MeasureAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PvpTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PvpTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PvpTableTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureName"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CoSelectedMeasureName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NamedExecutiveOfficersFnTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NamedExecutiveOfficersFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupIssuersFnTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeerGroupIssuersFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_ChangedPeerGroupFnTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_ChangedPeerGroupFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoTotalCompAmt"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeoTotalCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoActuallyPaidCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoActuallyPaidCompAmt"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeoActuallyPaidCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToPeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToPeoCompFnTextBlock"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_AdjToPeoCompFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgTotalCompAmt"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NonPeoNeoAvgTotalCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonPeoNeoAvgCompActuallyPaidAmt"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NonPeoNeoAvgCompActuallyPaidAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToNonPeoNeoCompFnTextBlock"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_AdjToNonPeoNeoCompFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_EquityValuationAssumptionDifferenceFnTextBlock"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_EquityValuationAssumptionDifferenceFnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsNetIncomeTextBlock"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsNetIncomeTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnVsPeerGroupTextBlock"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_TotalShareholderRtnVsPeerGroupTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CompActuallyPaidVsOtherMeasureTextBlock"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CompActuallyPaidVsOtherMeasureTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TabularListTableTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TabularListTableTextBlock"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_TabularListTableTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TotalShareholderRtnAmt"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_TotalShareholderRtnAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeerGroupTotalShareholderRtnAmt"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeerGroupTotalShareholderRtnAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_us-gaap_NetIncomeLoss" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_CoSelectedMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_CoSelectedMeasureAmt"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_CoSelectedMeasureAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_OtherPerfMeasureAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_OtherPerfMeasureAmt"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_OtherPerfMeasureAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AdjToCompAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AdjToCompAmt"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_AdjToCompAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_PeoName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_PeoName"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_PeoName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MeasureName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MeasureName"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_MeasureName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonGaapMeasureDescriptionTextBlock"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_NonGaapMeasureDescriptionTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Additional402vDisclosureTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Additional402vDisclosureTextBlock"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_PayVsPerformanceDisclosureLineItems" xlink:to="loc_ecd_Additional402vDisclosureTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#InsiderTradingArrangements"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingArrLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingArrLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrByIndTable" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrByIndTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TradingArrByIndTable" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TradingArrAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TradingArrAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_TradingArrByIndTable" xlink:to="loc_ecd_TradingArrAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllTradingArrangementsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllTradingArrangementsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_TradingArrAxis" xlink:to="loc_ecd_AllTradingArrangementsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_IndividualAxis" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_IndividualAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_TradingArrByIndTable" xlink:to="loc_ecd_IndividualAxis" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_AllIndividualsMember" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_AllIndividualsMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_IndividualAxis" xlink:to="loc_ecd_AllIndividualsMember" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_MtrlTermsOfTrdArrTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_MtrlTermsOfTrdArrTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndName" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndName"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrIndName" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrIndTitle" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrIndTitle"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrIndTitle" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrAdoptedFlag"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_Rule10b51ArrAdoptedFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrAdoptedFlag"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_NonRule10b51ArrAdoptedFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrAdoptionDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrAdoptionDate"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrAdoptionDate" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_Rule10b51ArrTrmntdFlag"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_Rule10b51ArrTrmntdFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_NonRule10b51ArrTrmntdFlag"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_NonRule10b51ArrTrmntdFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrTerminationDate" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrTerminationDate"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrTerminationDate" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrDuration" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrDuration"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrDuration" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_TrdArrSecuritiesAggAvailAmt"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingArrLineItems" xlink:to="loc_ecd_TrdArrSecuritiesAggAvailAmt" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" xlink:type="simple" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#InsiderTradingPoliciesProc"/>
  <link:presentationLink xlink:role="http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTradingPoliciesProcLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcAdoptedFlag"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:to="loc_ecd_InsiderTrdPoliciesProcAdoptedFlag" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:href="https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd#ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_ecd_InsiderTradingPoliciesProcLineItems" xlink:to="loc_ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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.25.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 Page - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Apr. 28, 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_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_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_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">Mar. 31,  2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">1-13455<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">TETRA Technologies, 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_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">74-2148293<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">24955 Interstate 45 North<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">The Woodlands,<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">77380<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">TX<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_CityAreaCode', window );">City Area Code</a></td>
<td class="text">281<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">367-1983<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityShellCompany', window );">Entity Shell 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_EntityCommonStockSharesOutstanding', window );">Entity Common Stock Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">133,072,970<span></span>
</td>
</tr>
<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">0000844965<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2025<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonStockMember', window );">Common Stock</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_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">TTI<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<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_StatementClassOfStockAxis=us-gaap_SeriesAPreferredStockMember', window );">Series A Preferred Stock</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_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Preferred Share Purchase Right<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_NoTradingSymbolFlag', window );">No Trading Symbol Flag</a></td>
<td class="text">true<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_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_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</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_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_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_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_NoTradingSymbolFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 security having no trading symbol.</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_NoTradingSymbolFlag</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:trueItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_CommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_CommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementClassOfStockAxis=us-gaap_SeriesAPreferredStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StatementClassOfStockAxis=us-gaap_SeriesAPreferredStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Operations - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_RevenuesAbstract', window );"><strong>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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenues from product sales and services</a></td>
<td class="nump">$ 157,140<span></span>
</td>
<td class="nump">$ 150,972<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenueAbstract', window );"><strong>Cost of 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_CostOfGoodsAndServicesSold', window );">Cost of product sales and services</a></td>
<td class="nump">104,565<span></span>
</td>
<td class="nump">111,114<span></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_tti_DepreciationDepletionAmortizationAndAccretion', window );">Depreciation, amortization and accretion</a></td>
<td class="nump">9,151<span></span>
</td>
<td class="nump">8,756<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Impairments and other charges</a></td>
<td class="nump">518<span></span>
</td>
<td class="nump">0<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_CostsAndExpenses', window );">Total cost of revenues</a></td>
<td class="nump">114,234<span></span>
</td>
<td class="nump">119,870<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">42,906<span></span>
</td>
<td class="nump">31,102<span></span>
</td>
</tr>
<tr class="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="nump">24,134<span></span>
</td>
<td class="nump">22,298<span></span>
</td>
</tr>
<tr class="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, net</a></td>
<td class="nump">4,724<span></span>
</td>
<td class="nump">5,952<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on debt extinguishment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">5,535<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other (income) expense, net</a></td>
<td class="nump">8,962<span></span>
</td>
<td class="num">(3,978)<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 );">Net income (loss) before taxes</a></td>
<td class="nump">5,086<span></span>
</td>
<td class="nump">1,295<span></span>
</td>
</tr>
<tr class="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 );">Provision for income taxes</a></td>
<td class="nump">1,037<span></span>
</td>
<td class="nump">380<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income attributable to TETRA stockholders</a></td>
<td class="nump">$ 4,049<span></span>
</td>
<td class="nump">$ 915<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasicAbstract', window );"><strong>Basic net income per common share:</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_EarningsPerShareBasic', window );">Net income attributable to TETRA stockholders (in dollars per share)</a></td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average basic shares outstanding (in shares)</a></td>
<td class="nump">132,350<span></span>
</td>
<td class="nump">130,453<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDilutedAbstract', window );"><strong>Diluted net income per common share:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net income attributable to TETRA stockholders (in dollars per share)</a></td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Weighted average diluted shares outstanding (in shares)</a></td>
<td class="nump">133,757<span></span>
</td>
<td class="nump">132,123<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ProductMember', window );">Product sales</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_RevenuesAbstract', window );"><strong>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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenues from product sales and services</a></td>
<td class="nump">$ 88,169<span></span>
</td>
<td class="nump">$ 73,337<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenueAbstract', window );"><strong>Cost of 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_CostOfGoodsAndServicesSold', window );">Cost of product sales and services</a></td>
<td class="nump">49,765<span></span>
</td>
<td class="nump">45,406<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ProductOrServiceAxis=us-gaap_ServiceMember', window );">Services</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_RevenuesAbstract', window );"><strong>Revenues:</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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenues from product sales and services</a></td>
<td class="nump">68,971<span></span>
</td>
<td class="nump">77,635<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfRevenueAbstract', window );"><strong>Cost of revenues:</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_CostOfGoodsAndServicesSold', window );">Cost of product sales and services</a></td>
<td class="nump">$ 54,800<span></span>
</td>
<td class="nump">$ 65,708<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_DepreciationDepletionAmortizationAndAccretion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net amount of depreciation, depletion, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by (used in) operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tti_DepreciationDepletionAmortizationAndAccretion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</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 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-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_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 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.2(a),(d))<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_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_CostOfRevenueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CostOfRevenueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostsAndExpenses">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 costs of sales and operating expenses for 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 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03)<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_CostsAndExpenses</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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/2147483589/942-220-S99-1<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(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareBasic</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasicAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_EarningsPerShareBasicAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDiluted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147483589/942-220-S99-1<br><br>Reference 14: 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/2147483586/944-220-S99-1<br><br>Reference 15: 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 16: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareDiluted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:perShareItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareDilutedAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_EarningsPerShareDilutedAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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://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/2147483575/946-220-S99-1<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.4)<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_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 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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 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)(i))<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 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 13: 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 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)(5))<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 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 16: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 17: 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 18: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 19: 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,2)<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_GrossProfit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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/2147483586/944-220-S99-1<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> -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 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/2003/role/disclosureRef<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 5: 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 6: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: 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/2147479557/942-235-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 940<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481913/940-20-25-1<br><br>Reference 9: 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 10: 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/2147483589/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 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 2: 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 3: 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 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.7)<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 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: 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 8: 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_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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/2147480167/946-830-55-10<br><br>Reference 2: 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/2147483581/946-220-45-3<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/2147483575/946-220-S99-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 22<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-22<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<br><br>Reference 6: 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.9)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 7: 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 (210.5-03(11))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483621/220-10-S99-2<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: 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 4: 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 5: 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 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 (b)(2)<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 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<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(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<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)(4)(iv))<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 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 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/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 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)(B))<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/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 28: 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 29: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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) related to nonoperating activities, 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 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_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 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/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 4: 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 5: 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 6: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<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/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: 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 11: 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_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenuesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevenuesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_srt_ProductOrServiceAxis=us-gaap_ProductMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ProductMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ProductOrServiceAxis=us-gaap_ServiceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_ProductOrServiceAxis=us-gaap_ServiceMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>14
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income (Loss) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [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_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 4,049<span></span>
</td>
<td class="nump">$ 915<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax', window );">Foreign currency translation adjustment from continuing operations, net of taxes of $0 in 2025 and 2024</a></td>
<td class="nump">3,876<span></span>
</td>
<td class="num">(1,634)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax', window );">Reclassification of non-cash cumulative foreign currency translation adjustment loss to net income from dissolution of Canadian subsidiary</a></td>
<td class="nump">9,516<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_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent', window );">Unrealized gain on investment</a></td>
<td class="nump">281<span></span>
</td>
<td class="nump">237<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_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss) attributable to TETRA stockholders</a></td>
<td class="nump">$ 17,722<span></span>
</td>
<td class="num">$ (482)<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_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<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 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 3: 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(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-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_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 adjustment, of gain (loss) in value of unsold investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), attributable to parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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, before 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-c)<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://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 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481839/830-10-45-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482014/830-20-35-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481694/830-30-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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reclassification adjustment from accumulated other comprehensive income for translation gain (loss) realized upon the sale or liquidation of an investment in a foreign entity and foreign currency hedges that are designated and qualified as hedging instruments for hedges of the foreign currency exposure of a net investment in a foreign operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-15<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 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 40<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481724/830-30-40-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 17A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-17A<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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/2147480167/946-830-55-11<br><br>Reference 9: 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/2147480767/946-205-45-3<br><br>Reference 10: 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/2147483581/946-220-45-7<br><br>Reference 11: 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/2147483586/944-220-S99-1<br><br>Reference 12: 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 13: 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/2147483575/946-220-S99-1<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(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 15: 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 16: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: 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 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)(4)(iii)(A))<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)(iv))<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)(5))<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/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 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 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)(iv))<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)(5))<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/disclosureRef<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 28: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 29: 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 30: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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/2147479557/942-235-S99-1<br><br>Reference 32: 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 33: 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 34: 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 35: 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 36: 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 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-2<br><br>Reference 38: 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 39: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Comprehensive Income (Loss) (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_StatementOfIncomeAndComprehensiveIncomeAbstract', window );"><strong>Statement of Comprehensive Income [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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest', window );">Taxes related to foreign currency translation adjustment from continuing operations</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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 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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_StatementOfIncomeAndComprehensiveIncomeAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 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_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">$ 41,000<span></span>
</td>
<td class="nump">$ 36,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_RestrictedCashAndCashEquivalentsAtCarryingValue', window );">Restricted cash</a></td>
<td class="nump">50<span></span>
</td>
<td class="nump">221<span></span>
</td>
</tr>
<tr class="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 of allowances of $537 in 2025 and $626 in 2024</a></td>
<td class="nump">120,902<span></span>
</td>
<td class="nump">104,813<span></span>
</td>
</tr>
<tr class="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">106,486<span></span>
</td>
<td class="nump">101,697<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">22,616<span></span>
</td>
<td class="nump">25,910<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">291,054<span></span>
</td>
<td class="nump">269,628<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNetAbstract', window );"><strong>Property, plant and equipment:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_LandAndBuilding', window );">Land and building</a></td>
<td class="nump">24,671<span></span>
</td>
<td class="nump">24,475<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MachineryAndEquipmentGross', window );">Machinery and equipment</a></td>
<td class="nump">327,680<span></span>
</td>
<td class="nump">323,044<span></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_tti_AutomobilesAndTrucks', window );">Automobiles and trucks</a></td>
<td class="nump">10,540<span></span>
</td>
<td class="nump">10,325<span></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_tti_ChemicalPlants', window );">Chemical plants</a></td>
<td class="nump">72,198<span></span>
</td>
<td class="nump">69,815<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConstructionInProgressGross', window );">Construction in progress</a></td>
<td class="nump">41,423<span></span>
</td>
<td class="nump">34,910<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_PropertyPlantAndEquipmentGross', window );">Total property, plant and equipment</a></td>
<td class="nump">476,512<span></span>
</td>
<td class="nump">462,569<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Less accumulated depreciation</a></td>
<td class="num">(327,237)<span></span>
</td>
<td class="num">(320,409)<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_PropertyPlantAndEquipmentNet', window );">Net property, plant and equipment</a></td>
<td class="nump">149,275<span></span>
</td>
<td class="nump">142,160<span></span>
</td>
</tr>
<tr class="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>Other 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_IntangibleAssetsNetExcludingGoodwill', window );">Patents, trademarks and other intangible assets, net of accumulated amortization of $56,745 in 2025 and $55,421 in 2024</a></td>
<td class="nump">24,072<span></span>
</td>
<td class="nump">24,923<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeTaxAssetsNet', window );">Deferred tax assets, net</a></td>
<td class="nump">97,181<span></span>
</td>
<td class="nump">98,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_OperatingLeaseRightOfUseAsset', window );">Operating lease right-of-use assets</a></td>
<td class="nump">30,584<span></span>
</td>
<td class="nump">29,797<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Investments</a></td>
<td class="nump">9,686<span></span>
</td>
<td class="nump">28,159<span></span>
</td>
</tr>
<tr class="ro">
<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 assets</a></td>
<td class="nump">12,233<span></span>
</td>
<td class="nump">12,379<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_TotalOtherAssets', window );">Total other assets</a></td>
<td class="nump">173,756<span></span>
</td>
<td class="nump">193,407<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Assets', window );">Total assets</a></td>
<td class="nump">614,085<span></span>
</td>
<td class="nump">605,195<span></span>
</td>
</tr>
<tr class="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_AccountsPayableCurrentAndNoncurrent', window );">Trade accounts payable</a></td>
<td class="nump">41,042<span></span>
</td>
<td class="nump">43,103<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DeferredIncomeCurrent', window );">Compensation and employee benefits</a></td>
<td class="nump">19,594<span></span>
</td>
<td class="nump">23,022<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating lease liabilities, current portion</a></td>
<td class="nump">9,325<span></span>
</td>
<td class="nump">8,861<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Accrued taxes</a></td>
<td class="nump">10,695<span></span>
</td>
<td class="nump">12,493<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedLiabilitiesCurrentAndNoncurrent', window );">Accrued liabilities and other</a></td>
<td class="nump">27,886<span></span>
</td>
<td class="nump">30,040<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent', window );">Current liabilities associated with discontinued operations</a></td>
<td class="nump">5,830<span></span>
</td>
<td class="nump">5,830<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_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">114,372<span></span>
</td>
<td class="nump">123,349<span></span>
</td>
</tr>
<tr class="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, net</a></td>
<td class="nump">180,095<span></span>
</td>
<td class="nump">179,696<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Operating lease liabilities</a></td>
<td class="nump">25,291<span></span>
</td>
<td class="nump">25,041<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetRetirementObligationsNoncurrent', window );">Asset retirement obligations</a></td>
<td class="nump">15,082<span></span>
</td>
<td class="nump">14,786<span></span>
</td>
</tr>
<tr class="ro">
<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">3,849<span></span>
</td>
<td class="nump">4,912<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other liabilities</a></td>
<td class="nump">3,653<span></span>
</td>
<td class="nump">4,104<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">227,970<span></span>
</td>
<td class="nump">228,539<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (Note 6)</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_StockholdersEquityAbstract', window );"><strong>Equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockValue', window );">Common stock, par value 0.01 per share; 250,000,000 shares authorized at March&#160;31, 2025 and December&#160;31, 2024; 136,207,612 shares issued at March&#160;31, 2025 and 134,951,081 shares issued at December&#160;31, 2024</a></td>
<td class="nump">1,362<span></span>
</td>
<td class="nump">1,350<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">493,424<span></span>
</td>
<td class="nump">492,722<span></span>
</td>
</tr>
<tr class="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, at cost; 3,138,675 shares held at March&#160;31, 2025 and December&#160;31, 2024</a></td>
<td class="num">(19,957)<span></span>
</td>
<td class="num">(19,957)<span></span>
</td>
</tr>
<tr class="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 loss</a></td>
<td class="num">(37,449)<span></span>
</td>
<td class="num">(51,122)<span></span>
</td>
</tr>
<tr class="re">
<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 deficit</a></td>
<td class="num">(164,376)<span></span>
</td>
<td class="num">(168,425)<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_StockholdersEquity', window );">Total TETRA stockholders&#8217; equity</a></td>
<td class="nump">273,004<span></span>
</td>
<td class="nump">254,568<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MinorityInterest', window );">Noncontrolling interests</a></td>
<td class="num">(1,261)<span></span>
</td>
<td class="num">(1,261)<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 );">Total equity</a></td>
<td class="nump">271,743<span></span>
</td>
<td class="nump">253,307<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 equity</a></td>
<td class="nump">$ 614,085<span></span>
</td>
<td class="nump">$ 605,195<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_AutomobilesAndTrucks">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long lived, depreciable assets used primarily for road transportation, including large vehicles primarily used for transporting cargo and vehicles that are used primarily for transporting people.</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;">tti_AutomobilesAndTrucks</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_ChemicalPlants">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Long-lived depreciable assets used for the processing, transmission, or distribution of materials that is not electricity, steam, fossil fuel, nuclear, natural gas, or water, and other long-term capitalized assets related to property, plant and equipment not otherwise previously categorized.</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;">tti_ChemicalPlants</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_LandAndBuilding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 real estate held for productive use. This excludes land held for sale. And carrying amount as of the balance sheet date of long-lived, depreciable assets that include building structures held for productive use including any addition, improvement, or renovation to the structure, such as interior masonry, interior flooring, electrical, and plumbing.</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;">tti_LandAndBuilding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_TotalOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 carrying amount, as of the balance sheet date, of noncurrent assets excluding property, plant and equipment. Noncurrent assets are expected to be realized or consumed after 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;">tti_TotalOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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.</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 944<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(15)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.15(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/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_AccountsPayableCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 310<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481990/310-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_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_AccruedLiabilitiesCurrentAndNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities.</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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.15(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/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_AccruedLiabilitiesCurrentAndNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(14))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<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_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 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 4: 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 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)(4))<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 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/2147479440/944-210-S99-1<br><br>Reference 7: 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/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/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/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_AssetRetirementObligationsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Noncurrent portion of the carrying amount of a liability for an asset retirement obligation. An asset retirement obligation is a legal obligation associated with the disposal or retirement of a tangible long-lived asset that results from the acquisition, construction or development, or the normal operations of a long-lived asset, except for certain obligations of lessees.</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 410<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/2147481850/410-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_AssetRetirementObligationsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 2: 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 3: 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 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 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/2147480167/946-830-55-12<br><br>Reference 8: 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/2147479440/944-210-S99-1<br><br>Reference 9: 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 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(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-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(18))<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 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 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)(i))<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)(4)(iii)(A))<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)(4)(iii)(B))<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)(4)(iv))<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 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 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/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 25: 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 (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<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/2147479853/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_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 2: 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 3: 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 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 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/disclosureRef<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 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(9))<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 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 10: 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 11: 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 12: 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 13: 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 14: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<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 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 17: 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 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/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_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 currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="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(1))<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 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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_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_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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)(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-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(15))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -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_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -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 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/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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_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_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConstructionInProgressGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DeferredIncomeCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 excluding obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="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 25<br> -Paragraph 2<br> -SubTopic 10<br> -Topic 470<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481174/470-10-25-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_DeferredIncomeCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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 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/2147479440/944-210-S99-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 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482525/740-10-45-4<br><br>Reference 3: 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_EquitySecuritiesFvNi">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI), 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(2))<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 1<br> -Subparagraph (f)<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 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482736/825-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_EquitySecuritiesFvNi</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482665/350-30-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<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/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/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 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(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_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/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 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/2147479440/944-210-S99-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(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1<br><br>Reference 4: 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 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://fasb.org/us-gaap/role/ref/legacyRef<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/2147479853/942-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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 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 2: 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 3: 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 4: 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 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 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 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 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 9: 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 10: 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 11: 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 12: 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 13: 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 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)(i))<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://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 17: 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 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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 19: 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 20: 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 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<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 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 3: 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 4: 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 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(g)(1)(ii))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480678/235-10-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 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/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 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 9: 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 10: 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 11: 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 12: 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 13: 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 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)(A))<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)(B))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<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 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 17: 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 18: 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 19: 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 20: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(25))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 23: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(26))<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_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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="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 10<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483475/205-20-45-10<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 5C<br> -Subparagraph (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-5C<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-9<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 5B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-20-50-5B<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 360<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482099/360-10-50-3<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 205<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 11<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483475/205-20-45-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_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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/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))<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_MachineryAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_MachineryAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_MinorityInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of equity (deficit) attributable to 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 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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: 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 4: 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)(24))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1<br><br>Reference 5: 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/2147479617/946-210-S99-1<br><br>Reference 6: 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 7: 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 8: 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 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)(i))<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)(iv))<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)(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1B<br><br>Reference 12: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.31)<br> -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_MinorityInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_OperatingLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_OperatingLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's right to use underlying asset under operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_OperatingLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 after 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.24)<br> -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_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="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(9))<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_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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/2147479440/944-210-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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(13))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 360<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/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/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/2147479440/944-210-S99-1<br><br>Reference 4: 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/2147480842/942-360-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_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_PropertyPlantAndEquipmentNetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PropertyPlantAndEquipmentNetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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_RestrictedCashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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/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 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 3: 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 4: 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 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)(23)(a)(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479440/944-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(17))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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 8: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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/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/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/2147480167/946-830-55-12<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(19))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-1<br><br>Reference 4: 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/2147479617/946-210-S99-2<br><br>Reference 5: 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/2147483575/946-220-S99-3<br><br>Reference 6: 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/2147483575/946-220-S99-3<br><br>Reference 7: 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/2147483575/946-220-S99-3<br><br>Reference 8: 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 9: 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 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-10-50-28<br><br>Reference 11: http://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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 13: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-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_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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479343/105-10-65-6<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479343/105-10-65-6<br><br>Reference 14: 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 15: 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 16: 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 17: 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 18: 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 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480336/718-10-65-15<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480336/718-10-65-15<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 15<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480336/718-10-65-15<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 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 23: 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 24: 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 25: 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 26: 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 27: 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 28: 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 29: 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/2147480167/946-830-55-11<br><br>Reference 30: 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/2147480767/946-205-45-3<br><br>Reference 31: 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/2147481004/946-505-50-3<br><br>Reference 32: 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/2147479617/946-210-S99-1<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 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 34: 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/2147483575/946-220-S99-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 S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 36: 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/2147483575/946-220-S99-3<br><br>Reference 37: 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 38: 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 39: 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 40: 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 41: 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 42: 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 43: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19,20)<br> -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_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.29,30)<br> -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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Balance Sheets (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 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_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_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Trade accounts receivable, allowances for doubtful accounts</a></td>
<td class="nump">$ 537<span></span>
</td>
<td class="nump">$ 626<span></span>
</td>
</tr>
<tr class="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 );">Patents, trademarks, and other intangible assets, accumulated amortization</a></td>
<td class="nump">$ 56,745<span></span>
</td>
<td class="nump">$ 55,421<span></span>
</td>
</tr>
<tr class="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 );">Common stock, par value (in dollars per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="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 );">Common stock, shares authorized (in shares)</a></td>
<td class="nump">250,000,000<span></span>
</td>
<td class="nump">250,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 );">Common stock, shares issued (in shares)</a></td>
<td class="nump">136,207,612<span></span>
</td>
<td class="nump">134,951,081<span></span>
</td>
</tr>
<tr class="re">
<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, shares held (in shares)</a></td>
<td class="nump">3,138,675<span></span>
</td>
<td class="nump">3,138,675<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_CommonStockParOrStatedValuePerShare">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Face amount or stated value per share of common stock.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 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/2147479617/946-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_CommonStockSharesAuthorized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_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_FiniteLivedIntangibleAssetsAccumulatedAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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><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 2<br> -Subparagraph (a)(1)<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_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_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>
<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481549/505-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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Consolidated Statement of Equity Statement - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock Par Value</div></th>
<th class="th"><div>Additional Paid-In Capital</div></th>
<th class="th"><div>Treasury Stock</div></th>
<th class="th"><div>Currency Translation</div></th>
<th class="th"><div>Unrealized Gain (Loss) on Investment</div></th>
<th class="th"><div>Retained Deficit</div></th>
<th class="th"><div>Noncontrolling Interest</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at beginning of period at Dec. 31, 2023</a></td>
<td class="nump">$ 147,334<span></span>
</td>
<td class="nump">$ 1,332<span></span>
</td>
<td class="nump">$ 489,156<span></span>
</td>
<td class="num">$ (19,957)<span></span>
</td>
<td class="num">$ (45,886)<span></span>
</td>
<td class="nump">$ 655<span></span>
</td>
<td class="num">$ (276,709)<span></span>
</td>
<td class="num">$ (1,257)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">915<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">915<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax', window );">Reclassification of non-cash cumulative foreign currency translation adjustment loss to net income from dissolution of Canadian subsidiary</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax', window );">Translation adjustment, net of taxes</a></td>
<td class="num">(1,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="num">(1,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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent', window );">Other comprehensive income</a></td>
<td class="nump">237<span></span>
</td>
<td class="text">&#160;<span></span>
</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">237<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss) attributable to TETRA stockholders</a></td>
<td class="num">(482)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Equity-based compensation</a></td>
<td class="nump">1,623<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,623<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockholdersEquityOther', window );">Other</a></td>
<td class="num">(2,328)<span></span>
</td>
<td class="nump">11<span></span>
</td>
<td class="num">(2,339)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at end of period at Mar. 31, 2024</a></td>
<td class="nump">146,147<span></span>
</td>
<td class="nump">1,343<span></span>
</td>
<td class="nump">488,440<span></span>
</td>
<td class="num">(19,957)<span></span>
</td>
<td class="num">(47,520)<span></span>
</td>
<td class="nump">892<span></span>
</td>
<td class="num">(275,794)<span></span>
</td>
<td class="num">(1,257)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at beginning of period at Dec. 31, 2024</a></td>
<td class="nump">253,307<span></span>
</td>
<td class="nump">1,350<span></span>
</td>
<td class="nump">492,722<span></span>
</td>
<td class="num">(19,957)<span></span>
</td>
<td class="num">(52,957)<span></span>
</td>
<td class="nump">1,835<span></span>
</td>
<td class="num">(168,425)<span></span>
</td>
<td class="num">(1,261)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">4,049<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,049<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax', window );">Reclassification of non-cash cumulative foreign currency translation adjustment loss to net income from dissolution of Canadian subsidiary</a></td>
<td class="nump">9,516<span></span>
</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">9,516<span></span>
</td>
<td class="text">&#160;<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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax', window );">Translation adjustment, net of taxes</a></td>
<td class="nump">3,876<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,876<span></span>
</td>
<td class="text">&#160;<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_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent', window );">Other comprehensive income</a></td>
<td class="nump">281<span></span>
</td>
<td class="text">&#160;<span></span>
</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">281<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Comprehensive income (loss) attributable to TETRA stockholders</a></td>
<td class="nump">17,722<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Equity-based compensation</a></td>
<td class="nump">1,860<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,860<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_StockholdersEquityOther', window );">Other</a></td>
<td class="num">(1,146)<span></span>
</td>
<td class="nump">12<span></span>
</td>
<td class="num">(1,158)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Balance at end of period at Mar. 31, 2025</a></td>
<td class="nump">$ 271,743<span></span>
</td>
<td class="nump">$ 1,362<span></span>
</td>
<td class="nump">$ 493,424<span></span>
</td>
<td class="num">$ (19,957)<span></span>
</td>
<td class="num">$ (39,565)<span></span>
</td>
<td class="nump">$ 2,116<span></span>
</td>
<td class="num">$ (164,376)<span></span>
</td>
<td class="num">$ (1,261)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480483/718-10-35-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-13<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481089/718-20-55-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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 220<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<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 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/942-220-S99-1<br><br>Reference 3: 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(22))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-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_ComprehensiveIncomeNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 adjustment, of gain (loss) in value of unsold investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), attributable to parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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, before 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-c)<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://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 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481839/830-10-45-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482014/830-20-35-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481694/830-30-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_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reclassification adjustment from accumulated other comprehensive income for translation gain (loss) realized upon the sale or liquidation of an investment in a foreign entity and foreign currency hedges that are designated and qualified as hedging instruments for hedges of the foreign currency exposure of a net investment in a foreign operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-15<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 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 40<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481724/830-30-40-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 17A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-17A<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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/2147480167/946-830-55-11<br><br>Reference 9: 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/2147480767/946-205-45-3<br><br>Reference 10: 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/2147483581/946-220-45-7<br><br>Reference 11: 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/2147483586/944-220-S99-1<br><br>Reference 12: 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 13: 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/2147483575/946-220-S99-1<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(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 15: 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 16: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: 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 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)(4)(iii)(A))<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)(iv))<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)(5))<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/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 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 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)(iv))<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)(5))<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/disclosureRef<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 28: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 29: 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 30: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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/2147479557/942-235-S99-1<br><br>Reference 32: 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 33: 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 34: 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 35: 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 36: 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 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-2<br><br>Reference 38: 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 39: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479343/105-10-65-6<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 105<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479343/105-10-65-6<br><br>Reference 14: 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 15: 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 16: 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 17: 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 18: 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 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480336/718-10-65-15<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 718<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480336/718-10-65-15<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 15<br> -Subparagraph (f)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480336/718-10-65-15<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 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483443/250-10-50-1<br><br>Reference 23: 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 24: 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 25: 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 26: 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 27: 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 28: 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 29: 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/2147480167/946-830-55-11<br><br>Reference 30: 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/2147480767/946-205-45-3<br><br>Reference 31: 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/2147481004/946-505-50-3<br><br>Reference 32: 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/2147479617/946-210-S99-1<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 2<br> -Subparagraph (SX 210.6-05(4))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-S99-2<br><br>Reference 34: 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/2147483575/946-220-S99-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 S99<br> -Paragraph 3<br> -Subparagraph (SX 210.6-09(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 36: 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/2147483575/946-220-S99-3<br><br>Reference 37: 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 38: 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 39: 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 40: 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 41: 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 42: 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 43: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_StockholdersEquityOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 element represents movements included in the statement of changes in stockholders' equity which are not separately disclosed or provided for elsewhere in the taxonomy.</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_StockholdersEquityOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>19
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 4,049<span></span>
</td>
<td class="nump">$ 915<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Reconciliation of net income to net cash provided by (used in) 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_DepreciationDepletionAndAmortization', window );">Depreciation, amortization and accretion</a></td>
<td class="nump">9,151<span></span>
</td>
<td class="nump">8,755<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetImpairmentCharges', window );">Impairments and other charges</a></td>
<td class="nump">518<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_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome', window );">Gain on investments</a></td>
<td class="num">(257)<span></span>
</td>
<td class="num">(2,795)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Equity-based compensation expense</a></td>
<td class="nump">1,860<span></span>
</td>
<td class="nump">1,623<span></span>
</td>
</tr>
<tr class="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 );">Recovery of credit losses</a></td>
<td class="num">(85)<span></span>
</td>
<td class="num">(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_AmortizationOfFinancingCosts', window );">Amortization and expense of financing costs</a></td>
<td class="nump">495<span></span>
</td>
<td class="nump">380<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainsLossesOnExtinguishmentOfDebt', window );">Loss on debt extinguishment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">5,535<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Gain on sale of assets</a></td>
<td class="num">(113)<span></span>
</td>
<td class="num">(29)<span></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_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax', window );">Non-cash cumulative foreign currency translation adjustment loss from dissolution of Canadian subsidiary</a></td>
<td class="nump">9,516<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_OtherNoncashIncomeExpense', window );">Other non-cash credits</a></td>
<td class="num">(128)<span></span>
</td>
<td class="num">(553)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and 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_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(15,584)<span></span>
</td>
<td class="num">(19,605)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(2,663)<span></span>
</td>
<td class="nump">1,542<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">6,158<span></span>
</td>
<td class="num">(3,918)<span></span>
</td>
</tr>
<tr class="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="num">(9,277)<span></span>
</td>
<td class="num">(5,577)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet', window );">Other</a></td>
<td class="nump">295<span></span>
</td>
<td class="nump">26<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 );">Net cash provided by (used in) operating activities</a></td>
<td class="nump">3,935<span></span>
</td>
<td class="num">(13,816)<span></span>
</td>
</tr>
<tr class="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>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_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchases of property, plant and equipment, net</a></td>
<td class="num">(17,956)<span></span>
</td>
<td class="num">(15,827)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments', window );">Proceeds from sale of investments</a></td>
<td class="nump">19,011<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_ProceedsFromSaleOfPropertyPlantAndEquipment', window );">Proceeds from sale of property, plant and equipment</a></td>
<td class="nump">182<span></span>
</td>
<td class="nump">251<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForProceedsFromOtherInvestingActivities', window );">Other investing activities</a></td>
<td class="nump">108<span></span>
</td>
<td class="num">(172)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash provided by (used in) investing activities</a></td>
<td class="nump">1,345<span></span>
</td>
<td class="num">(15,748)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt', window );">Proceeds from credit agreements and long-term debt</a></td>
<td class="nump">96<span></span>
</td>
<td class="nump">184,456<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Principal payments on credit agreements and long-term debt</a></td>
<td class="num">(96)<span></span>
</td>
<td class="num">(163,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_FinanceLeasePrincipalPayments', window );">Payments on financing lease obligations</a></td>
<td class="num">(931)<span></span>
</td>
<td class="num">(277)<span></span>
</td>
</tr>
<tr class="re">
<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 );">Debt issuance costs</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(5,277)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Shares withheld for taxes on equity-based compensation</a></td>
<td class="num">(1,158)<span></span>
</td>
<td class="num">(2,339)<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 );">Net cash provided by (used in) financing activities</a></td>
<td class="num">(2,089)<span></span>
</td>
<td class="nump">13,348<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Effect of exchange rate changes on cash</a></td>
<td class="nump">651<span></span>
</td>
<td class="num">(330)<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 );">Increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">3,842<span></span>
</td>
<td class="num">(16,546)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash at beginning of period</a></td>
<td class="nump">37,208<span></span>
</td>
<td class="nump">52,485<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Cash, cash equivalents and restricted cash at end of period</a></td>
<td class="nump">41,050<span></span>
</td>
<td class="nump">35,939<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract', window );"><strong>Reconciliation of cash, cash equivalents and restricted cash to the consolidated balance sheets</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_CashAndCashEquivalentsAtCarryingValue', window );">Cash and cash equivalents at end of period</a></td>
<td class="nump">41,000<span></span>
</td>
<td class="nump">35,939<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue', window );">Restricted cash at end of period</a></td>
<td class="nump">50<span></span>
</td>
<td class="nump">0<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents', window );">Total cash, cash equivalents and restricted cash at end of period shown in the consolidated statements of cash flows</a></td>
<td class="nump">$ 41,050<span></span>
</td>
<td class="nump">$ 35,939<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Cumulative Translation Adjustment Gain (Loss), Net of Tax</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;">tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AmortizationOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 debt issuance 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/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 2: 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><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 835<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<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(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_AmortizationOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetImpairmentCharges">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill.</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 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-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_AssetImpairmentCharges</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="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(1))<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 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483467/210-10-45-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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_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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="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 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-8<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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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/2147481877/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_DepreciationDepletionAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.</p></div>
<a href="javascript:void(0);" onclick="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 22<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-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_DepreciationDepletionAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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/2147481877/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_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 profit or loss on sales of previously unissued stock by subsidiaries or equity investees made to investors outside the consolidated group that is not reported as operating income. Represents the difference in the parent company's carrying amount of the equity interest in the subsidiary or equity investee immediately before and after the transaction.</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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 property, plant and equipment assets, including oil and gas property and timber property.</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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_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_IncreaseDecreaseInOtherOperatingCapitalNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 after deduction of 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_IncreaseDecreaseInOtherOperatingCapitalNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 prepaid expenses, and 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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetCashProvidedByUsedInFinancingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_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_PaymentsForProceedsFromOtherInvestingActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash (inflow) outflow from investing activities 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/2009/role/commonPracticeRef<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><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 230<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_PaymentsForProceedsFromOtherInvestingActivities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<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_PaymentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_ProceedsFromIssuanceOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479886/946-10-S99-3<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<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_ProceedsFromIssuanceOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash inflow associated with the sale, maturity and collection of all investments such as debt, security and so forth 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<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_ProceedsFromSaleMaturityAndCollectionsOfInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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_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 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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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/2147480167/946-830-55-11<br><br>Reference 9: 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/2147480767/946-205-45-3<br><br>Reference 10: 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/2147483581/946-220-45-7<br><br>Reference 11: 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/2147483586/944-220-S99-1<br><br>Reference 12: 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 13: 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/2147483575/946-220-S99-1<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(1)(d))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-3<br><br>Reference 15: 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 16: 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 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)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 18: 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 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)(4)(iii)(A))<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)(iv))<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)(5))<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/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 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 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)(iv))<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)(5))<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/disclosureRef<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 28: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 29: 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 30: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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/2147479557/942-235-S99-1<br><br>Reference 32: 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 33: 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 34: 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 35: 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 36: 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 37: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-2<br><br>Reference 38: 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 39: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProfitLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense (reversal of expense) for expected credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 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_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><br>Reference 2: 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 (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_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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_RestrictedCashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_ShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Consolidated Statement of Equity (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax', window );">Tax related to translation adjustment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 tax expense (benefit), before 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-12<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481839/830-10-45-9<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481956/830-20-45-5<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 21<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481694/830-30-45-21<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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>21
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization, Basis of Presentation, and Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_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 );">Organization, Basis of Presentation, and Significant Accounting Policies</a></td>
<td class="text">ORGANIZATION, BASIS OF PRESENTATION, AND SIGNIFICANT ACCOUNTING POLICIES<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Organization</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We are an energy services and solutions company with operations on six continents focused on developing environmentally conscious services and solutions that help make people's lives better. In </span><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">addition to providing products and services to the oil and gas industry and calcium chloride for diverse applications, TETRA is expanding into the low-carbon energy market with chemistry expertise, key mineral acreage, and global infrastructure, helping to meet the demand for sustainable energy in the twenty-first century. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We were incorporated in Delaware in 1981. Our products and services are delivered through two reporting segments &#8211; Completion Fluids &amp; Products Division and Water &amp; Flowback Services Division.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Our Completion Fluids &amp; Products Division manufactures and markets clear brine fluids (&#8220;CBFs&#8221;), additives, and associated products and services to the oil and gas industry for use in well drilling, completion, and workover operations in the United States and in certain countries in Latin America, Europe, Asia, the Middle East, and Africa. The Division also markets liquid and dry calcium chloride products manufactured at its production facilities or purchased from third-party suppliers to a variety of markets outside the energy industry. Calcium chloride is used in the oil and gas industry, and also has broad industrial applications to the agricultural, road, food and beverage, and lithium production markets. Our Completion Fluids &amp; Products Division also markets TETRA PureFlow,</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:6.5pt;font-weight:400;line-height:112%;position:relative;top:-3.5pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">an ultra-pure zinc bromide, as well as TETRA PureFlow Plus, an ultra-pure zinc bromide/zinc chloride blend, to battery technology companies.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Our Water &amp; Flowback Services Division provides onshore oil and gas operators with comprehensive water management services. The Division also provides frac flowback, production well testing, and other associated services in many of the major oil and gas producing regions in the United States, as well as in oil and gas basins in certain countries in Latin America, Europe, and the Middle East. We are also developing and pilot testing technologies to treat and desalinate produced water from oil wells for beneficial reuse, including surface discharge.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unless the context requires otherwise, when we refer to &#8220;we,&#8221; &#8220;us,&#8221; and &#8220;our,&#8221; we are describing TETRA Technologies, Inc. and its subsidiaries on a consolidated basis.</span></div><div><span><br/></span></div><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Presentation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our unaudited consolidated financial statements include the accounts of our wholly owned or controlled subsidiaries. All intercompany balances and transactions have been eliminated in consolidation. The information furnished reflects all normal recurring adjustments, which are, in the opinion of management, necessary to provide a fair statement of the results for the interim periods. Operating results for the period ended March&#160;31, 2025 are not necessarily indicative of results that may be expected for the twelve months ended December&#160;31, 2025.</span></div><div><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited consolidated financial statements have been prepared in accordance with Rule 10-01 of Regulation S-X for interim financial statements required to be filed with the U.S. Securities and Exchange Commission (&#8220;SEC&#8221;) and do not include all information and footnotes required by U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;) for complete financial statements. These financial statements should be read in conjunction with the financial statements for the year ended December&#160;31, 2024 and notes thereto included in our Annual Report on Form 10-K filed with the Securities and Exchange Commission on February&#160;25,&#160;2025 (the &#8220;</span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">202</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">4</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8221;).</span></div><div style="padding-left:2.25pt"><span><br/></span></div><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Discontinued Operations</span></div><div style="padding-left:2.25pt"><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In early 2018, we closed a series of related transactions that resulted in the disposition of our former Offshore segment. Our former Offshore segment is reported as discontinued operations for all periods presented. We may be required to satisfy certain decommissioning liabilities under third-party indemnity agreements and corporate guarantees for which costs may be significant. During the three months ended September 30, 2024, we accrued $5.8&#160;million of decommissioning expense and liability associated with our former Offshore segment for which costs might be above the value of surety bonds on properties previously disposed. See Note 6 - &#8220;Commitments and Contingencies&#8221; for additional discussion of contingencies related to discontinued operations.</span></div><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:112%">Significant Accounting Policies</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our significant accounting policies are described in the notes to our consolidated financial statements for the year ended December&#160;31, 2024 included in our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">202</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">4</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Other than reporting restricted cash as described below, there have been no significant changes in our accounting policies or the application thereof during the first quarter of 2025.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Out-of-Period Correction</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three months ended March&#160;31, 2025, we recorded an adjustment to our deferred tax liability related to a correction to our 2024 tax provision. This adjustment increased income tax benefit by $1.2&#160;million and increased net income per share attributable to TETRA stockholders by $0.01 in the consolidated statement of operations for the three months ended March 31, 2025. The Company assessed the impact of this out-of-period adjustment and concluded that it was not material to the financial statements previously issued for any interim or annual period, and the adjustment during the quarter ended March 31, 2025 is not expected to be material to the annual financial statements for 2025.</span></div><div style="text-indent:36pt"><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Cash</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Restricted cash is classified as a current asset when it is expected to be repaid or settled in the next twelve-month period. In connection with the May 2024 amendment to our ABL Credit Agreement, our former administrative agent required us to collateralize our outstanding letters of credit until the letters of credit expired in March 2025. Restricted cash as of March&#160;31, 2025 consists of less than $0.1&#160;million held in escrow in connection with our Arkansas development.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues, expenses, and impairments during the reporting period. Actual results could differ from those estimates, and such differences could be</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">material.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Mineral Resources Arrangement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have rights to the brine underlying our approximately 40,000 gross acres of brine leases in the Smackover Formation in Southwest Arkansas, including rights to the bromine and lithium contained in the brine. In June 2023, we entered into a memorandum of understanding (&#8220;MOU&#8221;) with Saltwerx LLC (&#8220;Saltwerx&#8221;), an indirect wholly owned subsidiary of ExxonMobil Corporation, relating to the Evergreen Unit, and potential bromine and lithium production from brine produced from the unit. We completed an initial preliminary economic assessment in early 2023 for the extraction of the brine and for a bromine processing plant. On January 8, 2024, we announced the completion of a technical resources report for the Evergreen Unit in Arkansas. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, we capitalized approximately $11.2&#160;million and $4.1&#160;million, respectively, of costs associated with the development of our properties in Arkansas.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Currency Translation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have designated the Euro, the British pound, the Canadian dollar, the</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Brazilian real as the functional currencies for our operations in Finland and Sweden, the United Kingdom, Canada and Brazil, respectively. The United States dollar is the designated functional currency for most of our other non-U.S. operations. The cumulative translation effects of translating the applicable accounts from the functional currencies into the United States dollar at current exchange rates are included as a separate component of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">equity. Foreign currency exchange (gains) losses are included in other (income) expense, net and totaled $8.8&#160;million and $(0.2)&#160;million during the three months ended March&#160;31, 2025 and March&#160;31, 2024, respectively. Foreign currency exchange losses during the three months ended March&#160;31, 2025 include recognition of a $9.5 million cumulative foreign currency translation adjustment loss, which was reclassified from accumulated other comprehensive loss due to the dissolution of our former subsidiary in Canada during the three months ended March&#160;31, 2025.</span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Fair Value Measurements</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We utilize fair value measurements to account for certain items and account balances within our consolidated financial statements. Fair value measurements are utilized on a recurring basis in the determination of the carrying values of certain investments. See Note 7 - &#8220;Fair Value Measurements&#8221; for further discussion. Fair value measurements are also utilized on a nonrecurring basis in certain circumstances, including the impairment of long-lived assets (a Level 3 fair value measurement).</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Supplemental Cash Flow Information</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information is as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest paid</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,999&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,406&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes paid</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,360&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">433&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,292&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,131&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">New Accounting Pronouncements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Standards not yet adopted</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In November 2024, the FASB issued Accounting Standards Update (&#8220;ASU&#8221;) 2024-03, &#8220;Income Statement&#8211;Reporting Comprehensive Income&#8211;Expense Disaggregation Disclosures (Subtopic 220-40)&#8221; ("ASU 2024-03"). ASU 2024-03 requires additional disclosures about certain expenses included in the income statement, including purchases of inventory, employee compensation, intangible asset amortization and depreciation. ASU 2024-03 is effective for annual periods beginning after December 15, 2026 and interim reporting periods beginning after December 15, 2027 with early adoption permitted. The Company is currently evaluating the impact of ASU 2024-03 on its financial statements and related disclosures</span><span style="color:#000000;font-family:'Aptos',san-serif;font-size:12pt;font-weight:400;line-height:115%">.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In December 2023, the FASB issued ASU 2023-09, &#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#8221; The new standard requires companies to disclose specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 is effective for annual reporting periods beginning after December 15, 2024, with early adoption permitted.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company is currently evaluating the expected impact of these standards but does not expect them to have a significant impact on its consolidated financial statements upon adoption as the standards expand disclosures only.</span></div><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> -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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 235<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//235/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_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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [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_RevenueFromContractWithCustomerTextBlock', window );">Revenue</a></td>
<td class="text">REVENUE<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue from Contracts with Customers</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our contract asset balances, primarily associated with contractual invoicing milestones and/or customer documentation requirements, were $26.3&#160;million and $30.4 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively. Contract assets, along with billed trade accounts receivable, are included in trade accounts receivable in our consolidated balance sheets.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Unearned income includes amounts in which the Company was contractually allowed to invoice prior to satisfying the associated performance obligations. Unearned income balances were $0.6&#160;million and $0.4&#160;million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and vary based on the timing of invoicing and performance obligations being met. Unearned income is included in accrued liabilities and other in our consolidated balance sheets. We recognized approximately $0.1&#160;million and $0.1&#160;million during the three months ended </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">March&#160;31, 2025 and March&#160;31, 2024, respectively, deferred in unearned income as of the beginning of the period. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, contract costs were not significant.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We disaggregate revenue from contracts with customers into Product Sales and Services within each segment, as noted in our two reportable segments in Note 9 - &#8220;Industry Segments.&#8221; In addition, we disaggregate revenue from contracts with customers by geography based on the following table below.</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:63.028%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.471%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61,144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,437&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,874&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,845&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">93,018&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">77,282&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">55,878&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,711&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,244&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,979&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,122&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">73,690&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">117,022&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106,148&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,118&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,824&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">157,140&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">150,972&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><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 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-9<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 10<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10<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 15<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-15<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 12<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12<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 (b)<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 (c)<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 (d)<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 (e)<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 13<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13<br><br>Reference 10: 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>23
<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.25.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<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventories</a></td>
<td class="text">INVENTORIES<div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of inventories as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">89,804&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">90,919&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,023&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,599&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Parts and supplies</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,681&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,297&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,882&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total inventories</span></div></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106,486&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101,697&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div>Finished goods inventories include newly manufactured clear brine fluids as well as used brines that are repurchased from certain customers for recycling<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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Investments<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_InvestmentsInAndAdvancesToAffiliatesAbstract', window );"><strong>Investments in and Advances to Affiliates [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_InvestmentTextBlock', window );">Investments</a></td>
<td class="text">INVESTMENTS<div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our investments as of March&#160;31, 2025 and December&#160;31, 2024 consist of the following:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:62.710%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.625%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.538%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.627%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Kodiak</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,598&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Investments</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,686&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,159&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2025, we sold our Kodiak Gas Services, Inc. </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">(NYSE: KGS) (&#8220;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Kodiak&#8221;) shares for proceeds of $19.0&#160;million, net of transaction and broker fees. During the three months ended March&#160;31, 2025, we recorded a net gain of $0.6&#160;million from the sale of our Kodiak shares.</span></div><div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, we are party to agreements whereby Standard Lithium has the right to explore for, and an option to acquire the rights to produce and extract, lithium in our Arkansas leases and other additional potential resources in the Mojave region of California. The Company received stock of Standard Lithium under the terms of the arrangements.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%">We also hold investments in convertible notes, common units and preferred units issued by two privately-held companies. These convertible notes, common units and preferred units are not publicly traded and may not be offered, sold, transferred or pledged until such common units are registered pursuant to an effective registration statement or pursuant to an exemption from registration. Our exposure to potential losses is limited to our investments, including capitalized and accrued interest associated with the convertible notes.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">See Note 7 - &#8220;Fair Value Measurements&#8221; for further information.</span></div><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_InvestmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 320<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//320/tableOfContent<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Topic 321<br> -Publisher FASB<br> -URI https://asc.fasb.org//321/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Accounting Standards Codification<br> -Topic 325<br> -Publisher FASB<br> -URI https://asc.fasb.org//325/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_InvestmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_InvestmentsInAndAdvancesToAffiliatesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsInAndAdvancesToAffiliatesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Term Debt and Other Borrowings<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_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 );">Long-Term Debt and Other Borrowings</a></td>
<td class="text">LONG-TERM DEBT AND OTHER BORROWINGS<div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated long-term debt as of March&#160;31, 2025 and December&#160;31, 2024 consists of the following:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:43.636%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.882%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.449%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Scheduled Maturity</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term Credit Agreement</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">January 1, 2030</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">180,095&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">179,696&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">180,095&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">179,696&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Net of unamortized discount of $4.8&#160;million and $5.0 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and net of unamortized deferred financing costs of $5.1 million and $5.3 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Term Credit Agreement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pricing on the Term Credit Agreement is the secured overnight financing rate (&#8220;SOFR&#8221;) plus 5.75%. The interest rate per annum on borrowings under the Term Credit Agreement is 10.17% as of March&#160;31, 2025 and the maturity date of the Term Credit Agreement is January&#160;1, 2030. The Term Credit Agreement includes a $75 million delayed-draw term loan available until January 12, 2026 to provide capital to advance our Arkansas bromine processing project. The Company is required to pay a commitment fee on the unutilized commitments with respect to the delayed-draw term loan at the rate of 1.5% per annum.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Term Credit Agreement contains certain affirmative and negative covenants, including covenants that restrict the ability of the Company and certain of its subsidiaries to take certain actions including, among other things and subject to certain significant exceptions, the incurrence of debt, the granting of liens, engaging in mergers and other fundamental changes, the making of investments, entering into transactions with affiliates, the payment of dividends and other restricted payments, the prepayment of other indebtedness and the sale of assets. The Term Credit Agreement also requires the Company to maintain a Leverage Ratio (as defined in the Term Credit Agreement) of not more than 4.0 to 1.0 as of the end of each fiscal quarter and Liquidity (as defined in the Term Credit Agreement) of not less than $50.0&#160;million at all times.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">All obligations under the Term Credit Agreement and the guarantees of those obligations are secured, subject to certain exceptions, by a security interest on substantially all of the property of the Company and its domestic subsidiaries, subject to the lien priorities set forth in the intercreditor agreement with the agent under our ABL Credit Agreement.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our Term Credit Agreement requires us to offer to prepay a percentage of Excess Cash Flow (as defined in the Term Credit Agreement) within five business days of filing our Annual Report.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Term Credit Agreement includes customary events of default including non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations or warranties, cross-default to other material indebtedness, bankruptcy and insolvency events, invalidity or impairment of security interests or invalidity of loan documents, certain ERISA events, unsatisfied or unstayed judgments and change of control.</span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">ABL Credit Agreement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">As of March&#160;31, 2025, we had no borrowings outstanding and $0.2&#160;million letters of credit or guarantees</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">under our ABL Credit Agreement. Deferred financing costs of&#160;$1.0&#160;million&#160;and $1.0&#160;million as of&#160;March&#160;31, 2025 and December&#160;31, 2024, respectively, were classified as other long-term assets on the accompanying consolidated balance sheet as there was no outstanding balance on our ABL Credit Agreement. As of March&#160;31, 2025, our ABL Credit Agreement provides, with certain restrictions, for a senior secured revolving credit facility of up to $100.0&#160;million with a $25.0&#160;million accordion. The credit facility is subject to a borrowing base determined monthly by reference to the value of inventory and accounts receivable, and includes a sublimit of $20.0&#160;million for letters of credit, and a swingline loan sublimit of $11.5&#160;million. The ABL Credit Agreement matures on May&#160;13, 2029. Subject to compliance with the covenants, borrowing base, and other provisions of the ABL Credit Agreement that may limit borrowings, we had availability of $87.1&#160;million under this agreement.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the ABL Credit Agreement bear interest at a rate per annum equal to, at the option of TETRA, either (i) the standard overnight financing rate plus 0.10%, (ii) a base rate plus a margin based on a fixed charge coverage ratio, or (iii) the Daily Simple Risk Free Rate plus 0.10%. The base rate is determined by reference to the highest of (a) the prime rate of interest as announced from time to time by Bank of America, N.A. (b) the Federal Funds Effective Rate (as defined in the ABL Credit Agreement) plus 0.5% per annum and (c) the standard overnight financing rate (adjusted to reflect any required bank reserves) for a one-month period on such day plus 1.0% per annum, provided that the base rate shall not be less than 1.0%. Borrowings outstanding have an applicable margin ranging from 2.00% to 2.50% per annum for SOFR-based loans and 1.00% to 1.50% per annum for base-rate loans, based upon the applicable fixed charge coverage ratio. In addition to paying interest on the outstanding principal under the ABL Credit Agreement, TETRA is required to pay a commitment fee in respect of the unutilized commitments at an applicable rate of 0.375% per annum. TETRA is also required to pay a customary letter of credit fee equal to the applicable margin on loans and fronting fees.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160; All obligations under the ABL Credit Agreement and the guarantees of those obligations are secured, subject to certain exceptions, by a security interest for the benefit of the ABL Lenders on substantially all of the personal property of TETRA and certain subsidiaries of TETRA, the equity interests in certain domestic subsidiaries, and a maximum of 65% of the equity interests in certain foreign subsidiaries.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Swedish Credit Facility</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2022, the Company entered into a revolving credit facility for seasonal working capital needs of subsidiaries in Sweden (&#8220;Swedish Credit Facility&#8221;). As of March&#160;31, 2025, we had no balance outstanding and availability of approximately $5.0&#160;million under the Swedish Credit Facility. During each year, all outstanding loans under the Swedish Credit Facility must be repaid for at least 30 consecutive days. Borrowings bear interest at a rate of 2.95% per annum. The Swedish Credit Facility expires on December 31, 2025 and the Company intends to renew it annually.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Finland Credit Agreement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In January 2022, the Company also entered into an agreement guaranteed by certain accounts receivable and inventory in Finland (&#8220;Finland Credit Agreement&#8221;). As of March&#160;31, 2025, there were $1.5&#160;million of letters of credit outstanding against the Finland Credit Agreement. The Finland Credit Agreement expires on January 31, 2026 and the Company intends to renew it annually.</span></div><div><span><br/></span></div><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Covenants</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our credit agreements contain certain affirmative and negative covenants, including covenants that restrict the ability to pay dividends or other restricted payments. As of March&#160;31, 2025, we are in compliance with all covenants under the credit agreements.</span></div><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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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>26
<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.25.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">3 Months Ended</th>
</tr>
<tr><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_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">COMMITMENTS AND CONTINGENCIES<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Litigation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are named defendants in several lawsuits and respondents in certain governmental proceedings arising in the ordinary course of business. While the outcome of lawsuits or other proceedings against us cannot be predicted with certainty, management does not consider it reasonably possible that a loss resulting from such lawsuits or other proceedings in excess of any amounts accrued has been incurred that is expected to have a material adverse impact on our financial condition, results of operations, or liquidity.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">There have been no material developments in our legal proceedings during the quarter ended March&#160;31, 2025. For additional discussion of our legal proceedings, please see our </span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline"><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline">202</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline">4</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Product Purchase Obligations</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the normal course of our Completion Fluids &amp; Products Division operations, we enter into supply agreements with certain manufacturers of various raw materials and finished products. Some of these agreements have terms and conditions that specify a minimum or maximum level of purchases over the term of the agreement. Other agreements require us to purchase the entire output of the raw material or finished product produced by the manufacturer. Our purchase obligations under these agreements apply only with regard to raw materials and finished products that meet specifications set forth in the agreements. We recognize a liability for the purchase of such products at the time we receive them. As of March&#160;31, 2025, the aggregate amount of the fixed and determinable portion of the purchase obligation pursuant to our Completion Fluids &amp; Products Division&#8217;s supply agreements was approximately $55.9&#160;million, including $17.4&#160;million for the remainder of 2025, $22.2&#160;million in 2026, $15.4&#160;million in 2027, and $0.9&#160;million in 2028. As of March&#160;31, 2025, our Water &amp; Flowback Services division had an obligation to purchase equipment for approximately $4.0&#160;million during the year ending December 31, 2025. As of March&#160;31, 2025, we also have commitments of $23.8&#160;million related to long-lead power infrastructure for our Completion Fluids &amp; Products Division&#8217;s proposed bromine plant in Arkansas, including $10.3&#160;million due during the remainder of 2025 and $13.5&#160;million due over five years beginning after electric service is available.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contingencies Related to Discontinued Operations</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In early 2018, we closed the Maritech Asset Purchase and Sale Agreement (&#8220;Maritech APA") and Maritech Membership Interest Purchase Agreement (&#8220;Maritech MIPA&#8221;) with Orinoco Natural Resources, LLC (&#8220;Orinoco&#8221;) that together provided for the purchase by Orinoco of all of Maritech&#8217;s remaining oil and gas properties and related assets and all outstanding membership interests of Maritech. Under the Maritech APA, Orinoco assumed responsibility for all of Maritech&#8217;s decommissioning liabilities related to the leases sold to Orinoco (the &#8220;Orinoco Lease Liabilities&#8221;) and, under the Maritech MIPA, Orinoco assumed all other liabilities of Maritech, including the decommissioning liabilities associated with Maritech&#8217;s interests in oil and gas properties previously sold by Maritech and select infrastructure still operated by Maritech (the &#8220;Legacy Liabilities&#8221;), subject to certain limited exceptions unrelated to the decommissioning liabilities. To the extent that Maritech or Orinoco fails to satisfy decommissioning liabilities associated with any of the Orinoco Lease Liabilities or the Legacy Liabilities, we may be required to satisfy such liabilities under third party indemnity agreements and corporate guarantees that we previously provided to the U.S. Department of the Interior (&#8220;BSEE&#8221;) and other parties, respectively, for which costs may be significant. Pursuant to a Bonding Agreement entered into as part of these Orinoco transactions (the &#8220;Bonding Agreement&#8221;), Orinoco provided non-revocable performance bonds from a surety company in an aggregate amount of $46.8&#160;million to cover the performance by Orinoco and Maritech of certain specific asset retirement obligations of Maritech (the &#8220;Initial Bonds&#8221;) and agreed to replace the Initial Bonds with other non-revocable performance bonds in the aggregate sum of $47.0&#160;million (collectively, the &#8220;Replacement Bonds&#8221;). In the event Orinoco does not provide the Replacement Bonds, Orinoco is required to make certain cash escrow payments to us. To date, no cash escrow payments have been made. On August 16, 2024, we issued a letter to Orinoco and the bond company demanding realignment of the existing bonds and/or issuance of Replacement Bonds pursuant to the terms of the Bonding Agreement to better align bond coverage with the more likely liability risks. To date, no written response has been received.</span></div><div style="text-indent:36pt"><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The payment obligations of Orinoco under the Bonding Agreement were guaranteed by Thomas M. Clarke and Ana M. Clarke pursuant to a separate guaranty agreement (the &#8220;Clarke Bonding Guaranty Agreement&#8221;). Orinoco has not delivered the Replacement Bonds and neither it nor the Clarkes has made any of the agreed upon cash escrow payments. We filed a lawsuit against Orinoco and the Clarkes to enforce the terms of the Bonding </span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Agreement and the Clarke Bonding Guaranty Agreement. The trial court initially granted summary judgment in favor of Orinoco and the Clarkes, dismissing our claims against Orinoco under the Bonding Agreement and against the Clarkes under the Clarke Bonding Guaranty Agreement. We filed an appeal with the trial court requesting a new trial on the summary judgment or modification of the judgment. On November 5, 2019, the trial court signed an order granting our motion for a new trial and vacating the prior summary judgment order. The parties are awaiting direction from the court on a new scheduling order and/or trial setting. The Initial Bonds, which are non-revocable, remain in effect. </span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In addition, Maritech and certain other interest owners have received decommissioning orders from BSEE and could receive additional decommissioning orders in the future. Such decommissioning orders received by Maritech and other interest owners relate to asset retirement obligations for certain properties in the Gulf of America. From time to time, we also receive demand notices from third parties related to certain corporate guarantees or other arrangements covering such decommissioning liabilities. While the ultimate outcome of such matters cannot be predicted at this time, if Maritech or other interest owners default, BSEE or third parties may seek to enforce certain corporate guarantees or third party indemnity agreements against us for a portion of such decommissioning obligations, which may be significant. On February 13, 2025, Arena Energy, LLC filed a complaint in U.S. District Court for the Southern District of Texas seeking indemnification from us and Maritech for decommissioning costs related to a Maritech oil and gas platform in the Gulf of America. We intend to vigorously defend against the claims brought by Arena Energy, LLC but we are presently unable to predict the duration, scope or result of this proceeding. </span></div><div><span><br/></span></div><div style="text-indent:38.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If we become liable in the future for any decommissioning liability associated with any property covered by either an Initial Bond or Replacement Bond while such bonds are outstanding and any payment made to us under such bond is insufficient to satisfy such liability, the Bonding Agreement provides that Orinoco will pay us an amount equal to such deficiency. If Orinoco fails to pay any such amount, such amount must be paid by the Clarkes under the Clarke Bonding Guaranty Agreement. Our financial condition and results of operations may be negatively affected if we become liable for a significant portion of the decommissioning liabilities and Orinoco or the Clarkes are unable to cover any such deficiency.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">With respect to certain properties in the Gulf of America, we have been advised that the cost of the decommissioning work to plug and abandon certain wells is projected to be significantly higher than the approximately $10.7&#160;million bond supporting the liability, which was put in place by Maritech and other interest owners based on earlier cost estimates. We have also been advised more recently that Maritech&#8217;s prior working interest with respect those plugging and abandonment (&#8220;P&amp;A&#8221;) costs are expected to exceed its share of the bond. In September 2024, P&amp;A operations commenced pursuant to a cost sharing agreement among certain parties for decommissioning certain properties in the Gulf of America. While Maritech is not a party to this cost sharing agreement, a predecessor of Maritech has advised us that it expects to seek reimbursement from us for the portion of decommissioning costs it has contractually agreed to pay pursuant to the terms of the cost sharing agreement. While the ultimate outcome of this matter cannot be predicted, we could potentially be liable for an estimated amount in the range of $5.8&#160;million to $19.4&#160;million, depending on the outcome of negotiations and whether other partners or property owners in the chain of title fulfill their respective obligations under their agreements. Additionally, we understand that in connection with the P&amp;A operations being performed, Maritech and the other named obligees have made a demand on the related bond. We have made efforts to protect Maritech&#8217;s proportionate share of the bond proceeds (approximately $3.9&#160;million), including demanding that the surety segregate or ensure that Maritech&#8217;s share is applied solely to satisfy its proportionate share of the decommissioning costs. We accrued a liability of $5.8&#160;million related to this obligation during the year ended December 31, 2024.</span></div><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/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 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/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/2147480327/954-440-50-1<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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482648/440-10-50-4<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 440<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//440/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_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>27
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [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_FairValueDisclosuresTextBlock', window );">Fair Value Measurements</a></td>
<td class="text">FAIR VALUE MEASUREMENTS<div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Financial Instruments</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline">Investments</span></div><div><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our investments in Kodiak and Standard Lithium are recorded in investments on our consolidated balance sheets based on the quoted market stock price (Level 1 fair value measurements). The stock component of consideration received from Standard Lithium is initially recorded as unearned income based on the quoted market price at the time the stock is received, then recognized in income over the contract term. Changes in the value of stock are recorded in other (income) expense, net in our consolidated statements of operations.</span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We also hold investments in convertible notes, common units, and preferred units issued by two privately-held companies. Our investment in certain preferred units were recorded based on observable market-based inputs for preferred units issued to several investors during August through October 2024 (Level 2 fair value measurement). Our investment in convertible notes, common units, and certain preferred units are recorded in our consolidated financial statements based on internal valuations with assistance from a third-party valuation specialist (Level 3 fair value measurement). The valuations are impacted by key assumptions, including the assumed probability and timing of potential debt or equity offerings. One of the convertible notes includes an option to convert the note into equity interests. The change in the fair value of the embedded option, as well as the preferred units and common units, are included in other (income) expense, net in our consolidated statements of operations. The change in the fair value of the convertible note, excluding the embedded option, is included in other comprehensive income (loss) in our consolidated statements of comprehensive income.</span></div><div style="padding-left:2.25pt"><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in our investments for the three-month periods ended March&#160;31, 2025 and March&#160;31, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are as follows:</span></div><div style="margin-top:5pt;padding-left:2.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:28.415%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.786%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.786%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.786%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.791%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at beginning of period</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,561&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,388&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,159&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Sale of investments</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(19,011)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(19,011)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Reclassification between Level 2 and Level 3 fair value</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,388)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,388&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on equity securities</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized loss on embedded option</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(209)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(209)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on convertible note, excluding embedded option</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">281&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">281&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at end of period</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,686&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;padding-left:2.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:52.644%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.584%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:13.584%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.586%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,154&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,200&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,354&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on equity securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,994&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,994&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized loss on embedded option</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(199)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(199)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on convertible note, excluding embedded option</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">237&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">237&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at end of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,148&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,238&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,386&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring fair value measurements by valuation hierarchy as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:46.191%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.737%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.737%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.739%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total as of</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Total investments</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,686&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:28.724%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.720%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total as of </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 5.5pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Kodiak</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,598&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,388&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Investments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">28,159&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Other</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair values of cash, restricted cash, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and long-term debt approximate their carrying amounts. See Note 5 - &#8220;Long-Term Debt and Other Borrowings&#8221; for further discussion.</span></div><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_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-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_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income per Share<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Net Income Per Share</a></td>
<td class="text">NET INCOME PER SHARE<div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the weighted average number of common shares outstanding with the number of shares used in the computations of net income per common and common equivalent share:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:63.028%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.471%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number of weighted average common shares outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,350&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130,453&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-4.5pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assumed vesting of equity awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,407&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,670&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Average diluted shares outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">133,757&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,123&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<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/2147482662/260-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//260/tableOfContent<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-10-50-2<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 260<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482662/260-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_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Industry Segments<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingDisclosureTextBlock', window );">Industry Segments</a></td>
<td class="text">INDUSTRY SEGMENTS<div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We manage our operations through two segments: Completion Fluids &amp; Products Division and Water &amp; Flowback Services Division.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Summarized financial information concerning the business segments is as follows:</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:56.356%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.864%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:8.700%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">93,018</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">64,122</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">157,140</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of product sales and services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">54,315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50,250&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104,565&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,177&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,880&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,151&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Impairments and other charges</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,683&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,735&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,716&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,134&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(115)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(719)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,634&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,962&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">30,677</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(8,888)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(16,703)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">5,086</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">13,843</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4,064</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">49</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">17,956</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">318,848</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">162,365</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">132,872</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">614,085</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">77,282</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">73,690</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">150,972</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of product sales and services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,464&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,650&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">111,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,387&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,288&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">81&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,756&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,693&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,102&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,298&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(269)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,145&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,952&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">215&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(548)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,645)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,978)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">19,792</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">721</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(19,218)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1,295</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">7,705</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">8,045</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">77</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">15,827</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">290,788</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">158,475</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">155,932</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">605,195</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 2: http://www.xbrl.org/2003/role/disclosureRef<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><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 31<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-31<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 (d)<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 42<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42<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 32<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//280/tableOfContent<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 26<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-26<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<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 11: 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> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-41<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-21<br><br>Reference 14: 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 (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<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.25.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>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_ecd_PvpTable', window );"><strong>Pay vs Performance Disclosure</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 (loss), retained deficit</a></td>
<td class="nump">$ 4,049<span></span>
</td>
<td class="nump">$ 915<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 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 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481687/323-10-50-3<br><br>Reference 3: 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 4: 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 5: 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 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 (b)(2)<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 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147480167/946-830-55-10<br><br>Reference 14: 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/2147483581/946-220-45-7<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(18))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/946-220-S99-1<br><br>Reference 18: 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/2147483575/946-220-S99-3<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)(4)(i))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480097/470-10-S99-1A<br><br>Reference 20: 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 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)(iii)(A))<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)(4)(iv))<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 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 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/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 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)(B))<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/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 28: 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 29: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-30<br><br>Reference 30: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 31: 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 32: 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 33: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 34: 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 35: 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 36: 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 37: 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 38: 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 39: 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/2147483589/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>31
<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.25.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>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_ecd_TradingArrByIndTable', window );"><strong>Trading Arrangements, by Individual</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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_ecd_TradingArrByIndTable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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 2<br> -Subparagraph 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_TradingArrByIndTable</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization, Basis of Presentation, and Significant Accounting Policies (Policies)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_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_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy', window );">Presentation</a></td>
<td class="text"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Presentation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our unaudited consolidated financial statements include the accounts of our wholly owned or controlled subsidiaries. All intercompany balances and transactions have been eliminated in consolidation. The information furnished reflects all normal recurring adjustments, which are, in the opinion of management, necessary to provide a fair statement of the results for the interim periods. Operating results for the period ended March&#160;31, 2025 are not necessarily indicative of results that may be expected for the twelve months ended December&#160;31, 2025.</span></div><div><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited consolidated financial statements have been prepared in accordance with Rule 10-01 of Regulation S-X for interim financial statements required to be filed with the U.S. Securities and Exchange Commission (&#8220;SEC&#8221;) and do not include all information and footnotes required by U.S. generally accepted accounting principles (&#8220;U.S. GAAP&#8221;) for complete financial statements. These financial statements should be read in conjunction with the financial statements for the year ended December&#160;31, 2024 and notes thereto included in our Annual Report on Form 10-K filed with the Securities and Exchange Commission on February&#160;25,&#160;2025 (the &#8220;</span><span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">202</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">4</a><a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"> Annual Report</a></span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8221;).</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DiscontinuedOperationsPolicyTextBlock', window );">Discontinued Operations</a></td>
<td class="text"><div style="padding-left:2.25pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Discontinued Operations</span></div><div style="padding-left:2.25pt"><span><br/></span></div><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In early 2018, we closed a series of related transactions that resulted in the disposition of our former Offshore segment. Our former Offshore segment is reported as discontinued operations for all periods presented. We may be required to satisfy certain decommissioning liabilities under third-party indemnity agreements and corporate guarantees for which costs may be significant. During the three months ended September 30, 2024, we accrued $5.8&#160;million of decommissioning expense and liability associated with our former Offshore segment for which costs might be above the value of surety bonds on properties previously disposed. See Note 6 - &#8220;Commitments and Contingencies&#8221; for additional discussion of contingencies related to discontinued operations.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy', window );">Restricted Cash</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Cash</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Restricted cash is classified as a current asset when it is expected to be repaid or settled in the next twelve-month period. In connection with the May 2024 amendment to our ABL Credit Agreement, our former administrative agent required us to collateralize our outstanding letters of credit until the letters of credit expired in March 2025. Restricted cash as of March&#160;31, 2025 consists of less than $0.1&#160;million held in escrow in connection with our Arkansas development.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UseOfEstimates', window );">Use of Estimates</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues, expenses, and impairments during the reporting period. Actual results could differ from those estimates, and such differences could be</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">material.</span></div><span></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_tti_MineralResourcesArrangementsPolicyTextBlock', window );">Mineral Resources Arrangement</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Mineral Resources Arrangement</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have rights to the brine underlying our approximately 40,000 gross acres of brine leases in the Smackover Formation in Southwest Arkansas, including rights to the bromine and lithium contained in the brine. In June 2023, we entered into a memorandum of understanding (&#8220;MOU&#8221;) with Saltwerx LLC (&#8220;Saltwerx&#8221;), an indirect wholly owned subsidiary of ExxonMobil Corporation, relating to the Evergreen Unit, and potential bromine and lithium production from brine produced from the unit. We completed an initial preliminary economic assessment in early 2023 for the extraction of the brine and for a bromine processing plant. On January 8, 2024, we announced the completion of a technical resources report for the Evergreen Unit in Arkansas. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, we capitalized approximately $11.2&#160;million and $4.1&#160;million, respectively, of costs associated with the development of our properties in Arkansas.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Foreign Currency Translation</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Foreign Currency Translation</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have designated the Euro, the British pound, the Canadian dollar, the</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Brazilian real as the functional currencies for our operations in Finland and Sweden, the United Kingdom, Canada and Brazil, respectively. The United States dollar is the designated functional currency for most of our other non-U.S. operations. The cumulative translation effects of translating the applicable accounts from the functional currencies into the United States dollar at current exchange rates are included as a separate component of</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">equity. Foreign currency exchange (gains) losses are included in other (income) expense, net and totaled $8.8&#160;million and $(0.2)&#160;million during the three months ended March&#160;31, 2025 and March&#160;31, 2024, respectively. Foreign currency exchange losses during the three months ended March&#160;31, 2025 include recognition of a $9.5 million cumulative foreign currency translation adjustment loss, which was reclassified from accumulated other comprehensive loss due to the dissolution of our former subsidiary in Canada during the three months ended March&#160;31, 2025.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueOfFinancialInstrumentsPolicy', window );">Fair Value Measurements</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Fair Value Measurements</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We utilize fair value measurements to account for certain items and account balances within our consolidated financial statements. Fair value measurements are utilized on a recurring basis in the determination of the carrying values of certain investments. See Note 7 - &#8220;Fair Value Measurements&#8221; for further discussion. Fair value measurements are also utilized on a nonrecurring basis in certain circumstances, including the impairment of long-lived assets (a Level 3 fair value measurement).</span></div><span></span>
</td>
</tr>
<tr class="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 );">New Accounting Pronouncements</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">New Accounting Pronouncements</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Standards not yet adopted</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In November 2024, the FASB issued Accounting Standards Update (&#8220;ASU&#8221;) 2024-03, &#8220;Income Statement&#8211;Reporting Comprehensive Income&#8211;Expense Disaggregation Disclosures (Subtopic 220-40)&#8221; ("ASU 2024-03"). ASU 2024-03 requires additional disclosures about certain expenses included in the income statement, including purchases of inventory, employee compensation, intangible asset amortization and depreciation. ASU 2024-03 is effective for annual periods beginning after December 15, 2026 and interim reporting periods beginning after December 15, 2027 with early adoption permitted. The Company is currently evaluating the impact of ASU 2024-03 on its financial statements and related disclosures</span><span style="color:#000000;font-family:'Aptos',san-serif;font-size:12pt;font-weight:400;line-height:115%">.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">In December 2023, the FASB issued ASU 2023-09, &#8220;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#8221; The new standard requires companies to disclose specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 is effective for annual reporting periods beginning after December 15, 2024, with early adoption permitted.</span></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company is currently evaluating the expected impact of these standards but does not expect them to have a significant impact on its consolidated financial statements upon adoption as the standards expand disclosures only.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_MineralResourcesArrangementsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Mineral Resources Arrangements</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;">tti_MineralResourcesArrangementsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</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_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Entity's cash and cash equivalents accounting policy with respect to restricted balances. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or company statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits.</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 942<br> -SubTopic 210<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(1)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-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_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 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_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 subsidiaries or other investments that are consolidated, including the accounting treatment for intercompany accounts or transactions and any 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> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 810<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_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy</td>
</tr>
<tr>
<td style="padding-right: 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_DiscontinuedOperationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 discontinued operations. Includes, but is not limited to, method of interest allocation to a discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section S99<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480781/205-20-S99-3<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 205<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483499/205-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_DiscontinuedOperationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueOfFinancialInstrumentsPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for determining the fair value of financial instruments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 60<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 820<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482053/820-10-60-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 825<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482907/825-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_FairValueOfFinancialInstrumentsPolicy</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 830<br> -Name Accounting Standards Codification<br> -Publisher FASB<br> -URI https://asc.fasb.org//830/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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-9<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-4<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -SubTopic 10<br> -Topic 275<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-10-50-12<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482861/275-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_UseOfEstimates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization, Basis of Presentation, and Significant Accounting Policies (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_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_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock', window );">Schedule of Supplemental Cash Flow Information</a></td>
<td class="text"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Supplemental cash flow information is as follows:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest paid</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,999&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,406&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes paid</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">3,360&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">433&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:12pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accrued capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,292&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,131&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><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_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 supplemental cash flow information for the periods presented.</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_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [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_DisaggregationOfRevenueTableTextBlock', window );">Schedule of Disaggregation of Revenue</a></td>
<td class="text">In addition, we disaggregate revenue from contracts with customers by geography based on the following table below.<div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:63.028%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.471%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">61,144&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">41,437&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">31,874&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">35,845&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">93,018&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">77,282&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">55,878&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,711&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,244&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,979&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">64,122&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">73,690&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Revenue</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">United States</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">117,022&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106,148&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">International</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">40,118&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">44,824&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">157,140&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">150,972&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><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_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_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>35
<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.25.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 (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventory</a></td>
<td class="text"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Components of inventories as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.446%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Finished goods</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">89,804&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">90,919&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,023&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,599&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Parts and supplies</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,681&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,297&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Work in progress</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,978&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,882&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total inventories</span></div></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">106,486&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">101,697&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 210<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483489/210-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_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>36
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Investments (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_InvestmentsInAndAdvancesToAffiliatesAbstract', window );"><strong>Investments in and Advances to Affiliates [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_InvestmentsInAndAdvancesToAffiliatesTextBlock', window );">Schedule of Investments</a></td>
<td class="text"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our investments as of March&#160;31, 2025 and December&#160;31, 2024 consist of the following:</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:62.710%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.625%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.538%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.627%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Kodiak</span></div></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,598&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total Investments</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,686&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,159&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><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_InvestmentsInAndAdvancesToAffiliatesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InvestmentsInAndAdvancesToAffiliatesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 investments in and advances to affiliates. Does not include the tabular disclosure of the disaggregation of investments in and advances to affiliates across legal entities.</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 320<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SX 210.12-14)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-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_InvestmentsInAndAdvancesToAffiliatesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Term Debt and Other Borrowings (Table)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_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"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Consolidated long-term debt as of March&#160;31, 2025 and December&#160;31, 2024 consists of the following:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:43.636%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.882%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.443%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.449%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Scheduled Maturity</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Term Credit Agreement</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">January 1, 2030</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">180,095&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">179,696&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">180,095&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">179,696&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Net of unamortized discount of $4.8&#160;million and $5.0 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and net of unamortized deferred financing costs of $5.1 million and $5.3 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively.</span></div><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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_FairValueDisclosuresAbstract', window );"><strong>Fair Value Disclosures [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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock', window );">Schedule of changes in Investments</a></td>
<td class="text"><div style="padding-left:2.25pt;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The change in our investments for the three-month periods ended March&#160;31, 2025 and March&#160;31, 2024</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are as follows:</span></div><div style="margin-top:5pt;padding-left:2.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:28.415%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.786%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.786%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.786%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.791%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at beginning of period</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">19,561&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,388&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">28,159&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Sale of investments</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(19,011)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(19,011)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Reclassification between Level 2 and Level 3 fair value</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(1,388)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,388&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on equity securities</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">466&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized loss on embedded option</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(209)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(209)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on convertible note, excluding embedded option</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">281&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">281&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at end of period</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,686&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;padding-left:2.25pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:52.644%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.584%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:13.584%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.586%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">10,154&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,200&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">17,354&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on equity securities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,994&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,994&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized loss on embedded option</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(199)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(199)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Unrealized gain on convertible note, excluding embedded option</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">237&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">237&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%">Investment balance at end of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">13,148&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,238&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">20,386&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock', window );">Schedule of Recurring Fair Value Measurements</a></td>
<td class="text"><div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Recurring fair value measurements by valuation hierarchy as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:46.191%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.737%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.737%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:15.739%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total as of</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,016&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,670&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Total investments</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,686&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr></table></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:28.724%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.720%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value Measurements Using</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total as of </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in Active Markets for Identical Assets or Liabilities</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other Observable Inputs</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Unobservable Inputs</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Description</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 5.5pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 2)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(Level 3)</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Kodiak</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">18,393&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Investment in Standard Lithium</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,168&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other investments</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,598&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,388&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">7,210&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">Investments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%">28,159&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances.</p></div>
<a href="javascript:void(0);" onclick="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 2C<br> -SubTopic 10<br> -Topic 820<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-2C<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<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 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-3<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fair value measurement of assets using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes during the period attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets) and gains or losses recognized in other comprehensive income (loss), and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs), by class of asset.</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 2<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 820<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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_FairValueDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock', window );">Schedule of Weighted Average Number of Share</a></td>
<td class="text"><div style="text-align:justify;text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a reconciliation of the weighted average number of common shares outstanding with the number of shares used in the computations of net income per common and common equivalent share:</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:63.028%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.469%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:16.471%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Number of weighted average common shares outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,350&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">130,453&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-4.5pt;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Assumed vesting of equity awards</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,407&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">1,670&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-4.5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Average diluted shares outstanding</span></div></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">133,757&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">132,123&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit).</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 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<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_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Industry Segments (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><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_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock', window );">Schedule of Financial Information of Segments</a></td>
<td class="text"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Summarized financial information concerning the business segments is as follows:</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:56.356%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.864%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:8.700%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">93,018</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">64,122</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">157,140</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of product sales and services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">54,315&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">50,250&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">104,565&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,177&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,880&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">94&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,151&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Impairments and other charges</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">518&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,683&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,735&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,716&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">24,134&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(115)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,846&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,724&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(719)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">9,634&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">47&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,962&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">30,677</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(8,888)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(16,703)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">5,086</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">13,843</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4,064</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">49</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">17,956</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">318,848</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">162,365</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">132,872</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">614,085</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Completion Fluids &amp; Products</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Water &amp; Flowback Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate</span></div></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">77,282</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">73,690</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&#8212;</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">150,972</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cost of product sales and services</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">48,464&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">62,650&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">111,114&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation, amortization and accretion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">2,387&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,288&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">81&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">8,756&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">General and administrative expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,693&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">4,503&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">11,102&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">22,298&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Interest (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(269)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">76&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">6,145&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,952&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Loss on debt extinguishment</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">5,535&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other (income) expense, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">215&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(548)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,645)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(3,978)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net income (loss) before taxes</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">19,792</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">721</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(19,218)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1,295</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Capital expenditures</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">7,705</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">8,045</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">77</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">15,827</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt 0 7pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">290,788</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">158,475</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">155,932</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">605,195</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><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_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 the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.</p></div>
<a href="javascript:void(0);" onclick="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 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482573/350-20-50-1<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 25<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-25<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<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_ScheduleOfSegmentReportingInformationBySegmentTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization, Basis of Presentation, and Significant Accounting Policies - Additional Information (Details)<br> $ / shares in Units, a in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($) </div>
<div>a </div>
<div>segment </div>
<div>$ / shares</div>
</th>
<th class="th">
<div>Sep. 30, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($) </div>
<div>$ / shares</div>
</th>
<th class="th">
<div>Dec. 31, 2024 </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_DividendsPayableLineItems', window );"><strong>Dividends Payable [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 reporting segments | segment</a></td>
<td class="nump">2<span></span>
</td>
<td class="text">&#160;<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_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense', window );">Decommissioning expense accrued</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,800<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,800<span></span>
</td>
</tr>
<tr class="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 );">Increase to income tax benefit</a></td>
<td class="num">$ (1,037)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">$ (380)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Increase to net income per share attributable to TETRA stockholders, basic (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Increase to net income per share attributable to TETRA stockholders, diluted (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 0.03<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue', window );">Restricted cash (less than)</a></td>
<td class="nump">$ 50<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 221<span></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_tti_GrossBrineLeaseAcres', window );">Gross brine lease acres | a</a></td>
<td class="nump">40<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RecapitalizationCosts', window );">Capitalized development costs</a></td>
<td class="nump">$ 11,200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ForeignCurrencyTransactionGainLossRealized', window );">Foreign currency exchange gains (losses)</a></td>
<td class="num">(8,800)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax', window );">Cumulative foreign currency translation adjustment loss</a></td>
<td class="nump">9,516<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<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_RestatementAxis=srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember', window );">Revision of Prior Period, Error Correction, Adjustment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_DividendsPayableLineItems', window );"><strong>Dividends Payable [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_IncomeTaxExpenseBenefit', window );">Increase to income tax benefit</a></td>
<td class="nump">$ 1,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>
</tr>
<tr class="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 );">Increase to net income per share attributable to TETRA stockholders, basic (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="text">&#160;<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_EarningsPerShareDiluted', window );">Increase to net income per share attributable to TETRA stockholders, diluted (in dollars per share) | $ / shares</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis=us-gaap_LetterOfCreditMember', window );">Letter of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DividendsPayableLineItems', window );"><strong>Dividends Payable [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_RestrictedCashAndCashEquivalentsAtCarryingValue', window );">Restricted cash (less than)</a></td>
<td class="nump">$ 100<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Decommissioning Liability 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;">tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_GrossBrineLeaseAcres">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Brine Lease Acres</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;">tti_GrossBrineLeaseAcres</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:areaItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DividendsPayableLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DividendsPayableLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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 14: 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/2147483589/942-220-S99-1<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(23))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 16: 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 17: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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 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 2: 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 3: 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 4: 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 5: 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 6: 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 7: 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 8: 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 9: 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 10: 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 11: 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 12: 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 13: 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/2147483589/942-220-S99-1<br><br>Reference 14: 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/2147483586/944-220-S99-1<br><br>Reference 15: 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 16: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_ForeignCurrencyTransactionGainLossRealized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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/2147480167/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 (a)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483581/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)(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483575/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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ForeignCurrencyTransactionGainLossRealized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 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 2: 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 3: 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 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.7)<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 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 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(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483586/944-220-S99-1<br><br>Reference 7: 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 8: 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_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/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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reclassification adjustment from accumulated other comprehensive income for translation gain (loss) realized upon the sale or liquidation of an investment in a foreign entity and foreign currency hedges that are designated and qualified as hedging instruments for hedges of the foreign currency exposure of a net investment in a foreign operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 15<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-15<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 830<br> -SubTopic 30<br> -Name Accounting Standards Codification<br> -Section 40<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481724/830-30-40-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 17A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-10-45-17A<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 16<br> -SubTopic 10<br> -Topic 220<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482790/220-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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RecapitalizationCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 recapitalization costs for professional fees associated with restructuring debt and equity mixture that do not qualify for capitalization.</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 420<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB TOPIC 5.P.4(b)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479823/420-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_RecapitalizationCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/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 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> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-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_RestrictedCashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<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_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis=us-gaap_LetterOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis=us-gaap_LetterOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>42
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Organization, Basis of Presentation, and Significant Accounting Policies - Supplemental Cash Flows (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 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_AccountingPoliciesAbstract', window );"><strong>Accounting Policies [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestPaidNet', window );">Interest paid</a></td>
<td class="nump">$ 4,999<span></span>
</td>
<td class="nump">$ 5,406<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesPaid', window );">Income taxes paid</a></td>
<td class="nump">3,360<span></span>
</td>
<td class="nump">$ 433<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalExpendituresIncurredButNotYetPaid', window );">Accrued capital expenditures</a></td>
<td class="nump">$ 5,292<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 7,131<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_CapitalExpendituresIncurredButNotYetPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 cash outflow to pay for purchases of fixed assets that have occurred.</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 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-4<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-3<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-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_CapitalExpendituresIncurredButNotYetPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.</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 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482913/230-10-50-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<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_IncomeTaxesPaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue - Additional Information (Details)<br> $ in Millions</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($) </div>
<div>segment</div>
</th>
<th class="th">
<div>Mar. 31, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2024 </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_RevenueFromContractWithCustomerAbstract', window );"><strong>Revenue from Contract with Customer [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerAssetNetCurrent', window );">Contract assets</a></td>
<td class="nump">$ 26.3<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 30.4<span></span>
</td>
</tr>
<tr class="re">
<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 );">Unearned income balances</a></td>
<td class="nump">0.6<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.4<span></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_tti_ContractWithCustomerLiabilityRevenueRecognizedNet', window );">Deferred revenue recognized</a></td>
<td class="nump">$ 0.1<span></span>
</td>
<td class="nump">$ 0.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_NumberOfReportableSegments', window );">Number of reportable segments | segment</a></td>
<td class="nump">2<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_tti_ContractWithCustomerLiabilityRevenueRecognizedNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contract With Customer, Liability, Revenue Recognized, 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;">tti_ContractWithCustomerLiabilityRevenueRecognizedNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479837/606-10-45-3<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_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 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/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 3: 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_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/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_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>44
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue - Disaggregation of Revenue (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">$ 157,140<span></span>
</td>
<td class="nump">$ 150,972<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">United States</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">117,022<span></span>
</td>
<td class="nump">106,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_srt_StatementGeographicalAxis=us-gaap_NonUsMember', window );">International</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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">40,118<span></span>
</td>
<td class="nump">44,824<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=tti_CompletionFluidsProductsDivisionMember', window );">Completion Fluids &amp; Products</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_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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">93,018<span></span>
</td>
<td class="nump">77,282<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=tti_CompletionFluidsProductsDivisionMember', window );">Completion Fluids &amp; Products | United States</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">61,144<span></span>
</td>
<td class="nump">41,437<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=tti_CompletionFluidsProductsDivisionMember', window );">Completion Fluids &amp; Products | International</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_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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">31,874<span></span>
</td>
<td class="nump">35,845<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=tti_WaterFlowbackServicesMember', window );">Water &amp; Flowback Services</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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">64,122<span></span>
</td>
<td class="nump">73,690<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementBusinessSegmentsAxis=tti_WaterFlowbackServicesMember', window );">Water &amp; Flowback Services | United States</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_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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">55,878<span></span>
</td>
<td class="nump">64,711<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=tti_WaterFlowbackServicesMember', window );">Water &amp; Flowback Services | International</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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Total Revenue</a></td>
<td class="nump">$ 8,244<span></span>
</td>
<td class="nump">$ 8,979<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 5<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479806/606-10-50-5<br><br>Reference 2: 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 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 (b)<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 (c)<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 (d)<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 (e)<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 (f)<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 (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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 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/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 4: 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 5: 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 6: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<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/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: 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 11: 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_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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=us-gaap_NonUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=us-gaap_NonUsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_CompletionFluidsProductsDivisionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_CompletionFluidsProductsDivisionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_WaterFlowbackServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_WaterFlowbackServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>45
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 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_InventoryDisclosureAbstract', window );"><strong>Inventory Disclosure [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoods', window );">Finished goods</a></td>
<td class="nump">$ 89,804<span></span>
</td>
<td class="nump">$ 90,919<span></span>
</td>
</tr>
<tr class="re">
<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">7,023<span></span>
</td>
<td class="nump">1,599<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherInventorySupplies', window );">Parts and supplies</a></td>
<td class="nump">7,681<span></span>
</td>
<td class="nump">7,297<span></span>
</td>
</tr>
<tr class="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 progress</a></td>
<td class="nump">1,978<span></span>
</td>
<td class="nump">1,882<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total inventories</a></td>
<td class="nump">$ 106,486<span></span>
</td>
<td class="nump">$ 101,697<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount before valuation and LIFO reserves of completed merchandise or goods expected to be sold within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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_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/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/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 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(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 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_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 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_OtherInventorySupplies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 other supplies used within the manufacturing or production process expected to be 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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(5))<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_OtherInventorySupplies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance 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>46
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Investments - Schedule of Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 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_InvestmentsInAndAdvancesToAffiliatesLineItems', window );"><strong>Investments in and Advances to Affiliates [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_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">$ 9,686<span></span>
</td>
<td class="nump">$ 28,159<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_KodiakGasServicesInc.Member', window );">Kodiak</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_InvestmentsInAndAdvancesToAffiliatesLineItems', window );"><strong>Investments in and Advances to Affiliates [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_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">18,393<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_StandardLithiumLtd.Member', window );">Standard Lithium</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_InvestmentsInAndAdvancesToAffiliatesLineItems', window );"><strong>Investments in and Advances to Affiliates [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_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">1,016<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_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_InvestmentsOtherMember', window );">Other investments</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_InvestmentsInAndAdvancesToAffiliatesLineItems', window );"><strong>Investments in and Advances to Affiliates [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_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">$ 8,670<span></span>
</td>
<td class="nump">$ 8,598<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_EquitySecuritiesFvNi">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI), 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(2))<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 1<br> -Subparagraph (f)<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 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482736/825-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_EquitySecuritiesFvNi</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_KodiakGasServicesInc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_KodiakGasServicesInc.Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_StandardLithiumLtd.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_StandardLithiumLtd.Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_InvestmentsOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_InvestmentsOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Investments - Additional Information (Details) - Kodiak - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 01, 2024</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_InvestmentsInAndAdvancesToAffiliatesLineItems', window );"><strong>Investments in and Advances to Affiliates [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_ProceedsFromSaleOfEquitySecuritiesFvNi', window );">Proceeds from sale of investment</a></td>
<td class="nump">$ 19.0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfInvestments', window );">Net gain on sale of investment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0.6<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_GainLossOnSaleOfInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 realized gain (loss) on investments sold during the period, not including gains (losses) on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, which, for cash flow reporting, is a component of proceeds from investing 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 (b)<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_GainLossOnSaleOfInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 from sale of investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI), classified as investing 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 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 19<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-19<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1<br> -SubTopic 10<br> -Topic 321<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479567/321-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_ProceedsFromSaleOfEquitySecuritiesFvNi</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_KodiakGasServicesInc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_KodiakGasServicesInc.Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Long-Term Debt and Other Borrowings - Schedule of Long Term Debt (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_LongTermDebtNoncurrent', window );">Total long-term debt</a></td>
<td class="nump">$ 180,095<span></span>
</td>
<td class="nump">$ 179,696<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_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Secured Debt | Term Loan Agreement</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_LongTermDebtNoncurrent', window );">Total long-term debt</a></td>
<td class="nump">180,095<span></span>
</td>
<td class="nump">179,696<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet', window );">Unamortized discount</a></td>
<td class="nump">4,800<span></span>
</td>
<td class="nump">5,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnamortizedDebtIssuanceExpense', window );">Unamortized deferred finance costs</a></td>
<td class="nump">$ 5,100<span></span>
</td>
<td class="nump">$ 5,300<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_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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(f))<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 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 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 5: 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 6: 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 7: 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 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69F<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 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 10: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<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 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 13: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<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 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 15: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 16: 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 17: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 18: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 19: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 20: 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 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<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 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 25: 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 (c)<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_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 discount (premium).</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 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-2<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-1A<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-4<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 55<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482949/835-30-55-8<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</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/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))<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_UnamortizedDebtIssuanceExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 remaining balance of debt issuance expenses that were capitalized and are being amortized against income over the lives of the respective bond issues. This does not include the amounts capitalized as part of the cost of the utility plant or asset.</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_UnamortizedDebtIssuanceExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=tti_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=tti_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Long-Term Debt and Other Borrowings - Additional Information (Details) - Secured Debt<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jan. 12, 2024 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Mar. 31, 2025 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2024 </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_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Term Loan Agreement</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="nump">5.75%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">10.17%<span></span>
</td>
<td class="text">&#160;<span></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_tti_DebtInstrumentCovenantLeverageRatioMaximum', window );">Maximum leverage ratio</a></td>
<td class="nump">4.0<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_tti_DebtInstrumentCovenantLiquidityMinimumAmount', window );">Maximum liquidity amount</a></td>
<td class="nump">$ 50,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Term Loan Agreement | Delayed-Draw Term Loan</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="nump">$ 75,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Commitment fee rate</a></td>
<td class="nump">1.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 100,000,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_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Commitment fee rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.375%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Outstanding debt</a></td>
<td class="text">&#160;<span></span>
</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_LettersOfCreditOutstandingAmount', window );">Letters of credit outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">200,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherDeferredCostsNet', window );">Deferred financing costs</a></td>
<td class="text">&#160;<span></span>
</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_LineOfCreditFacilityAdditionalBorrowingCapacity', window );">Accordion feature</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">25,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Availability under agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 87,100,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries', window );">Equity interest in certain foreign subsidiaries</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Secured Overnight Financing Rate (SOFR)</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.10%<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_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Secured Overnight Financing Rate (SOFR) | Minimum</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Secured Overnight Financing Rate (SOFR) | Maximum</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Base Rate</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.10%<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_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Base Rate | Minimum</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Base Rate | Maximum</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">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>
</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_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Fed Funds Effective Rate</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.50%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Secured Overnight Financing Rate (SOFR) Adjusted For Required Bank Reserves</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentBasisSpreadOnVariableRate1', window );">Basis spread on variable rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Letter of Credit</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 20,000,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_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Asset-Based Credit Agreement | Singline Loan</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 11,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Swedish Credit Facility</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2.95%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Outstanding debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Availability under agreement</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,000,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_DebtInstrumentTerm', window );">Term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">30 days<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember', window );">Finland Credit Agreement</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_DebtInstrumentLineItems', window );"><strong>Debt Instrument [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_LineOfCredit', window );">Outstanding debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 1,500,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Collateral, Percentage Of Equity Interest In Certain Foreign Subsidiaries</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;">tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types1: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_tti_DebtInstrumentCovenantLeverageRatioMaximum">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Covenant, Leverage Ratio, Maximum</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;">tti_DebtInstrumentCovenantLeverageRatioMaximum</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_tti_DebtInstrumentCovenantLiquidityMinimumAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Debt Instrument, Covenant, Liquidity, Minimum 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;">tti_DebtInstrumentCovenantLiquidityMinimumAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_tti_LineOfCreditFacilityAdditionalBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of Credit Facility, Additional Borrowing Capacity</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;">tti_LineOfCreditFacilityAdditionalBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -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_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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 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(f))<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 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 1B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 5: 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 6: 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 7: 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 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 69F<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69F<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 1B<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 10: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<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 1B<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 13: 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 (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<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 1B<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B<br><br>Reference 15: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 16: 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 17: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D<br><br>Reference 18: 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 (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 19: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E<br><br>Reference 20: 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 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<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 1F<br> -Subparagraph (b)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 470<br> -SubTopic 20<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1F<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F<br><br>Reference 25: 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 (c)<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_DebtInstrumentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LettersOfCreditOutstandingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 the contingent obligation under letters of credit outstanding as of the reporting date.</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_LettersOfCreditOutstandingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -SubTopic 10<br> -Topic 210<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 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/2147479440/944-210-S99-1<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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/2147479853/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_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_LineOfCreditFacilityMaximumBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(b))<br> -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_LineOfCreditFacilityRemainingBorrowingCapacity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding).</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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19(b),22(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_LineOfCreditFacilityRemainingBorrowingCapacity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the 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;">us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="padding-right: 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_OtherDeferredCostsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of other deferred costs capitalized at the end of the reporting period. Does not include deferred finance costs or deferred acquisition costs of insurance companies.</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(17))<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_OtherDeferredCostsNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=us-gaap_SecuredDebtMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=tti_TermLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CreditFacilityAxis=tti_TermLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=tti_DelayedDrawTermLoanDDTLMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_DelayedDrawTermLoanDDTLMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=tti_AssetBasedCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_AssetBasedCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=tti_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_VariableRateAxis=tti_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=us-gaap_BaseRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_BaseRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=tti_FedFundsEffectiveRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=tti_FedFundsEffectiveRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_VariableRateAxis=tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_LetterOfCreditMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LetterOfCreditMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_SinglineLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_SinglineLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=tti_SwedishCreditFacilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_SwedishCreditFacilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CreditFacilityAxis=tti_FinlandCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_FinlandCreditAgreementMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.25.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) - USD ($)<br> $ in Millions</strong></div></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Sep. 30, 2024</div></th>
<th class="th"><div>Sep. 30, 2024</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Aug. 16, 2024</div></th>
<th class="th"><div>Mar. 31, 2018</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense', window );">Accrued liability related to obligation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5.8<span></span>
</td>
<td class="nump">$ 5.8<span></span>
</td>
<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_LossContingenciesByNatureOfContingencyAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations | Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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_LossContingencyEstimateOfPossibleLoss', window );">Estimated amount of potential loss liability</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5.8<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_LossContingenciesByNatureOfContingencyAxis=us-gaap_SegmentDiscontinuedOperationsMember', window );">Discontinued Operations | Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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_LossContingencyEstimateOfPossibleLoss', window );">Estimated amount of potential loss liability</a></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">19.4<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_LossContingenciesByNatureOfContingencyAxis=us-gaap_SuretyBondMember', window );">Surety Bond | Maritech</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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_LossContingencyEstimateOfPossibleLoss', window );">Estimated amount of potential loss liability</a></td>
<td class="text">&#160;<span></span>
</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.7<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LossContingencyReceivableProceeds', window );">Bond proceeds</a></td>
<td class="nump">$ 3.9<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember', window );">Discontinued Operations, Disposed of by Sale | Offshore Division | Initial Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds', window );">Aggregate amount of performance bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 46.8<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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember', window );">Discontinued Operations, Disposed of by Sale | Offshore Division | Interim Replacement Bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds', window );">Aggregate amount of performance bonds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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">$ 47.0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_InventoriesMember', window );">Supply Agreements | Completion Fluids &amp; Products Division</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount', window );">Purchase 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="nump">55.9<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_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear', window );">Purchase obligation, remainder of 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">17.4<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_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary', window );">Purchase obligation, 2026</a></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">22.2<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_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary', window );">Purchase obligation, 2027</a></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.4<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_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary', window );">Purchase obligation, 2028</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.9<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_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_CapitalAdditionsMember', window );">Capital Addition Purchase Commitments | Completion Fluids &amp; Products Division</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount', window );">Purchase 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="nump">23.8<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_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear', window );">Purchase obligation, remainder of 2025</a></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.3<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_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive', window );">Purchase obligation, due over five years</a></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">13.5<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_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_CapitalAdditionsMember', window );">Capital Addition Purchase Commitments | Water &amp; Flowback Services Division</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear', window );">Purchase obligation, remainder of 2025</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4.0<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_tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Discontinued Operation, Amounts Of Material Contingent Liabilities Remaining, Performance Bonds</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;">tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disposal Group, Including Discontinued Operation, Decommissioning Liability 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;">tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</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/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 2: 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><br>Reference 3: 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 4: 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 5: 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 6: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><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_us-gaap_LossContingencyEstimateOfPossibleLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Reflects the estimated amount of loss from the specified contingency as of 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 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 2: 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 3: 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 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 460<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-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_LossContingencyEstimateOfPossibleLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingencyReceivableProceeds">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 from the collection of receivables related to a loss contingency.</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 3<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482425/460-10-50-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 230<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 17<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482740/230-10-45-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingencyReceivableProceeds</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 fixed and determinable portion of unrecorded unconditional purchase obligation to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<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_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 fixed and determinable portion of unrecorded unconditional purchase obligation to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<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_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 fixed and determinable portion of unrecorded unconditional purchase obligation to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<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_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the unrecorded obligation to transfer funds in the future for fixed or minimum amounts or quantities of goods or services at fixed or minimum prices (for example, as in take-or-pay contracts or throughput 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 440<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<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_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 fixed and determinable portion of unrecorded unconditional purchase obligation to be paid in remainder of current fiscal year.</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_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the fixed and determinable portion of the unrecorded unconditional purchase obligation maturing in the fifth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date.</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_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LossContingenciesByNatureOfContingencyAxis=us-gaap_SegmentDiscontinuedOperationsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LossContingenciesByNatureOfContingencyAxis=us-gaap_SegmentDiscontinuedOperationsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_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_LossContingenciesByNatureOfContingencyAxis=us-gaap_SuretyBondMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LossContingenciesByNatureOfContingencyAxis=us-gaap_SuretyBondMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=tti_MaritechMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=tti_MaritechMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DisposalGroupClassificationAxis=us-gaap_DiscontinuedOperationsDisposedOfBySaleMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=tti_OffshoreDivisionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis=tti_OffshoreDivisionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_PlanNameAxis=tti_InitialBondsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PlanNameAxis=tti_InitialBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_PlanNameAxis=tti_InterimReplacementBondsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PlanNameAxis=tti_InterimReplacementBondsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_InventoriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_InventoriesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_CompletionFluidsProductsDivisionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_CompletionFluidsProductsDivisionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_CapitalAdditionsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_CapitalAdditionsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_WaterFlowbackServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_WaterFlowbackServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements - Change in Our Investments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</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_FairValueByAssetClassAxis=us-gaap_InvestmentsMember', window );">Investments</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Beginning balance</a></td>
<td class="nump">$ 28,159<span></span>
</td>
<td class="nump">$ 17,354<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales', window );">Sale of investments</a></td>
<td class="num">(19,011)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3', window );">Reclassification between Level 2 and Level 3 fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Ending balance</a></td>
<td class="nump">9,686<span></span>
</td>
<td class="nump">20,386<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_FairValueByAssetClassAxis=us-gaap_EquitySecuritiesMember', window );">Equity Securities</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">466<span></span>
</td>
<td class="nump">2,994<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_FairValueByAssetClassAxis=us-gaap_RightsMember', window );">Embedded Option</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="num">(209)<span></span>
</td>
<td class="num">(199)<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_FairValueByAssetClassAxis=us-gaap_ConvertibleDebtSecuritiesMember', window );">Convertible Note</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">281<span></span>
</td>
<td class="nump">237<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">(Level 1) | Investments</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Beginning balance</a></td>
<td class="nump">19,561<span></span>
</td>
<td class="nump">10,154<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales', window );">Sale of investments</a></td>
<td class="num">(19,011)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3', window );">Reclassification between Level 2 and Level 3 fair value</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Ending balance</a></td>
<td class="nump">1,016<span></span>
</td>
<td class="nump">13,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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">(Level 1) | Equity Securities</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">466<span></span>
</td>
<td class="nump">2,994<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">(Level 1) | Embedded Option</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">(Level 1) | Convertible Note</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">(Level 2) | Investments</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Beginning balance</a></td>
<td class="nump">1,388<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales', window );">Sale of investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3', window );">Reclassification between Level 2 and Level 3 fair value</a></td>
<td class="num">(1,388)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Ending balance</a></td>
<td class="nump">0<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">(Level 2) | Equity Securities</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">0<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">(Level 2) | Embedded Option</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">0<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">(Level 2) | Convertible Note</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">0<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">(Level 3) | Investments</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Beginning balance</a></td>
<td class="nump">7,210<span></span>
</td>
<td class="nump">7,200<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales', window );">Sale of investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3', window );">Reclassification between Level 2 and Level 3 fair value</a></td>
<td class="nump">1,388<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue', window );">Ending balance</a></td>
<td class="nump">8,670<span></span>
</td>
<td class="nump">7,238<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">(Level 3) | Equity Securities</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">(Level 3) | Embedded Option</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="num">(209)<span></span>
</td>
<td class="num">(199)<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">(Level 3) | Convertible Note</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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward', window );"><strong>Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]</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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss', window );">Unrealized gain (loss)</a></td>
<td class="nump">$ 281<span></span>
</td>
<td class="nump">$ 237<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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrealized gain (loss) recognized in income from asset measured at fair value on recurring basis using unobservable input (level 3) and still held.</p></div>
<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 820<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/2147482106/820-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_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.</p></div>
<a href="javascript:void(0);" onclick="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_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 sale of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="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 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 transfers of financial instrument classified as an asset out of level 3 of the fair value hierarchy.</p></div>
<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 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.</p></div>
<a href="javascript:void(0);" onclick="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 2<br> -Subparagraph (c)<br> -SubTopic 10<br> -Topic 820<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-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_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByAssetClassAxis=us-gaap_InvestmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_InvestmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByAssetClassAxis=us-gaap_EquitySecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_EquitySecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByAssetClassAxis=us-gaap_RightsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_RightsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByAssetClassAxis=us-gaap_ConvertibleDebtSecuritiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByAssetClassAxis=us-gaap_ConvertibleDebtSecuritiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Market Risks and Derivative Hedge Contracts (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">$ 9,686<span></span>
</td>
<td class="nump">$ 28,159<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_KodiakGasServicesInc.Member', window );">Kodiak</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">18,393<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_StandardLithiumLtd.Member', window );">Standard Lithium</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">1,016<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_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_InvestmentsOtherMember', window );">Other investments</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">8,670<span></span>
</td>
<td class="nump">8,598<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">(Level 1) | Kodiak</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">18,393<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">(Level 1) | Standard Lithium</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">1,016<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">(Level 1) | Other investments</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">(Level 2) | Kodiak</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">(Level 2) | Standard Lithium</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">(Level 2) | Other investments</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,388<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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">(Level 3) | Kodiak</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">(Level 3) | Standard Lithium</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">(Level 3) | Other investments</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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems', window );"><strong>Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EquitySecuritiesFvNi', window );">Total investments</a></td>
<td class="nump">$ 8,670<span></span>
</td>
<td class="nump">$ 7,210<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_EquitySecuritiesFvNi">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI), 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(2))<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 1<br> -Subparagraph (f)<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 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 1A<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482736/825-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_EquitySecuritiesFvNi</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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/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 3: 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> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482106/820-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_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis=tti_KodiakGasServicesInc.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_KodiakGasServicesInc.Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_StandardLithiumLtd.Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_StandardLithiumLtd.Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_InvestmentsOtherMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_InvestmentsOtherMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="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_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net Income per Share (Details) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract', window );"><strong>Weighted Average Number of Shares Outstanding Reconciliation [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_WeightedAverageNumberOfSharesOutstandingBasic', window );">Number of weighted average common shares outstanding ( in shares)</a></td>
<td class="nump">132,350<span></span>
</td>
<td class="nump">130,453<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Assumed exercise of equity awards (in shares)</a></td>
<td class="nump">1,407<span></span>
</td>
<td class="nump">1,670<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_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Average diluted shares outstanding (in shares)</a></td>
<td class="nump">133,757<span></span>
</td>
<td class="nump">132,123<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_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</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_WeightedAverageNumberDilutedSharesOutstandingAdjustment</td>
</tr>
<tr>
<td style="padding-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_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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance 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>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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Industry Segments - Additional Details (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Mar. 31, 2025 </div>
<div>segment</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SegmentReportingAbstract', window );"><strong>Segment Reporting [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NumberOfOperatingSegments', window );">Number of segment operations</a></td>
<td class="nump">2<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_NumberOfOperatingSegments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning 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 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_NumberOfOperatingSegments</td>
</tr>
<tr>
<td style="padding-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_SegmentReportingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<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.25.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Industry Segments - Schedule of Segment Financial Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Mar. 31, 2025</div></th>
<th class="th"><div>Mar. 31, 2024</div></th>
<th class="th"><div>Dec. 31, 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_SegmentReportingInformationLineItems', window );"><strong>Industry Segments Details [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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">$ 157,140<span></span>
</td>
<td class="nump">$ 150,972<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 product sales and services</a></td>
<td class="nump">104,565<span></span>
</td>
<td class="nump">111,114<span></span>
</td>
<td class="text">&#160;<span></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_tti_DepreciationDepletionAmortizationAndAccretion', window );">Depreciation, amortization and accretion</a></td>
<td class="nump">9,151<span></span>
</td>
<td class="nump">8,756<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairments and other charges</a></td>
<td class="nump">518<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_GeneralAndAdministrativeExpense', window );">General and administrative expense</a></td>
<td class="nump">24,134<span></span>
</td>
<td class="nump">22,298<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest (income) expense, net</a></td>
<td class="nump">4,724<span></span>
</td>
<td class="nump">5,952<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 debt extinguishment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">5,535<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other (income) expense, net</a></td>
<td class="nump">8,962<span></span>
</td>
<td class="num">(3,978)<span></span>
</td>
<td class="text">&#160;<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Net income (loss) before taxes</a></td>
<td class="nump">5,086<span></span>
</td>
<td class="nump">1,295<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Capital expenditures</a></td>
<td class="nump">17,956<span></span>
</td>
<td class="nump">15,827<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">614,085<span></span>
</td>
<td class="nump">605,195<span></span>
</td>
<td class="nump">$ 605,195<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=tti_CompletionFluidsProductsDivisionMember', window );">Completion Fluids &amp; Products Division</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_SegmentReportingInformationLineItems', window );"><strong>Industry Segments Details [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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">93,018<span></span>
</td>
<td class="nump">77,282<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_StatementBusinessSegmentsAxis=tti_WaterFlowbackServicesMember', window );">Water &amp; Flowback Services Division</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_SegmentReportingInformationLineItems', window );"><strong>Industry Segments Details [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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">64,122<span></span>
</td>
<td class="nump">73,690<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Completion Fluids &amp; Products Division</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_SegmentReportingInformationLineItems', window );"><strong>Industry Segments Details [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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">93,018<span></span>
</td>
<td class="nump">77,282<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of product sales and services</a></td>
<td class="nump">54,315<span></span>
</td>
<td class="nump">48,464<span></span>
</td>
<td class="text">&#160;<span></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_tti_DepreciationDepletionAmortizationAndAccretion', window );">Depreciation, amortization and accretion</a></td>
<td class="nump">2,177<span></span>
</td>
<td class="nump">2,387<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairments and other charges</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" 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="nump">6,683<span></span>
</td>
<td class="nump">6,693<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest (income) expense, net</a></td>
<td class="num">(115)<span></span>
</td>
<td class="num">(269)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 debt extinguishment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other (income) expense, net</a></td>
<td class="num">(719)<span></span>
</td>
<td class="nump">215<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Net income (loss) before taxes</a></td>
<td class="nump">30,677<span></span>
</td>
<td class="nump">19,792<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Capital expenditures</a></td>
<td class="nump">13,843<span></span>
</td>
<td class="nump">7,705<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">318,848<span></span>
</td>
<td class="nump">290,788<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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember', window );">Operating Segments | Water &amp; Flowback Services Division</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_SegmentReportingInformationLineItems', window );"><strong>Industry Segments Details [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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">64,122<span></span>
</td>
<td class="nump">73,690<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 product sales and services</a></td>
<td class="nump">50,250<span></span>
</td>
<td class="nump">62,650<span></span>
</td>
<td class="text">&#160;<span></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_tti_DepreciationDepletionAmortizationAndAccretion', window );">Depreciation, amortization and accretion</a></td>
<td class="nump">6,880<span></span>
</td>
<td class="nump">6,288<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairments and other charges</a></td>
<td class="nump">518<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_GeneralAndAdministrativeExpense', window );">General and administrative expense</a></td>
<td class="nump">5,735<span></span>
</td>
<td class="nump">4,503<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest (income) expense, net</a></td>
<td class="num">(7)<span></span>
</td>
<td class="nump">76<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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 debt extinguishment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other (income) expense, net</a></td>
<td class="nump">9,634<span></span>
</td>
<td class="num">(548)<span></span>
</td>
<td class="text">&#160;<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Net income (loss) before taxes</a></td>
<td class="num">(8,888)<span></span>
</td>
<td class="nump">721<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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 );">Capital expenditures</a></td>
<td class="nump">4,064<span></span>
</td>
<td class="nump">8,045<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<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">162,365<span></span>
</td>
<td class="nump">158,475<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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember', window );">Corporate</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_SegmentReportingInformationLineItems', window );"><strong>Industry Segments Details [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_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Revenue</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of product sales and services</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_tti_DepreciationDepletionAmortizationAndAccretion', window );">Depreciation, amortization and accretion</a></td>
<td class="nump">94<span></span>
</td>
<td class="nump">81<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ImpairmentOfLongLivedAssetsHeldForUse', window );">Impairments and other charges</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" 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="nump">11,716<span></span>
</td>
<td class="nump">11,102<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InterestIncomeExpenseNet', window );">Interest (income) expense, net</a></td>
<td class="nump">4,846<span></span>
</td>
<td class="nump">6,145<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 debt extinguishment</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,535<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other (income) expense, net</a></td>
<td class="nump">47<span></span>
</td>
<td class="num">(3,645)<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Net income (loss) before taxes</a></td>
<td class="num">(16,703)<span></span>
</td>
<td class="num">(19,218)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Capital expenditures</a></td>
<td class="nump">49<span></span>
</td>
<td class="nump">77<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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">$ 132,872<span></span>
</td>
<td class="nump">$ 155,932<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_tti_DepreciationDepletionAmortizationAndAccretion">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 net amount of depreciation, depletion, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by (used in) operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">tti_DepreciationDepletionAmortizationAndAccretion</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>tti_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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 2: 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 3: 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 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 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/2147480167/946-830-55-12<br><br>Reference 8: 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/2147479440/944-210-S99-1<br><br>Reference 9: 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 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(8))<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147479617/946-210-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(18))<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 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 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)(i))<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)(4)(iii)(A))<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)(4)(iii)(B))<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)(4)(iv))<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 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 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/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 25: 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 (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 26: http://fasb.org/us-gaap/role/ref/legacyRef<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/2147479853/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_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_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 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.2(a),(d))<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_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_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_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://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/2147483575/946-220-S99-1<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.4)<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_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_ImpairmentOfLongLivedAssetsHeldForUse">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale).</p></div>
<a href="javascript:void(0);" onclick="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> -Topic 360<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/2147482099/360-10-50-2<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482130/360-10-45-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_ImpairmentOfLongLivedAssetsHeldForUse</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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/2147483586/944-220-S99-1<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> -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 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/2003/role/disclosureRef<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 5: 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 6: 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 (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 7: 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/2147479557/942-235-S99-1<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -SubTopic 20<br> -Topic 940<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147481913/940-20-25-1<br><br>Reference 9: 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 10: 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/2147483589/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_InterestIncomeExpenseNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of operating interest income (expense).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Topic 942<br> -SubTopic 220<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.10)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147483589/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_InterestIncomeExpenseNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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) related to nonoperating activities, 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 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_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: 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 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/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 4: 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 5: 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 6: 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 (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<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 40<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-40<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/2003/role/disclosureRef<br> -Topic 280<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org//1943274/2147482810/280-10-50-32<br><br>Reference 10: 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 11: 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_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SegmentReportingInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SegmentReportingInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementBusinessSegmentsAxis=tti_CompletionFluidsProductsDivisionMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_CompletionFluidsProductsDivisionMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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=tti_WaterFlowbackServicesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=tti_WaterFlowbackServicesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_ConsolidationItemsAxis=us-gaap_CorporateNonSegmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>EXCEL
<SEQUENCE>56
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( '6(G5I&QTU(E0   ,T    0    9&]C4')O<',O87!P+GAM
M;$W/30O", P&X+]2=K>9BAZD#D0]BIZ\SRYUA;8I;83Z[^T$/VYY><@;HBZ)
M(B:VF$7Q+N1M,S+'#4#6(_H^R\JABJ'D>ZXQW8&,L1H/I!\> \.B;=> A3$,
M.,SBM[#IU"Y&9W7/ED)WLCI1)L/B6#0ZL2<?J]P<"A#G>B4^BQ-+.9<K!?^+
M4\L54Y[FRF_\9 6_![H74$L#!!0    ( '6(G5K_\(=7\@   "L"   1
M9&]C4')O<',O8V]R92YX;6S-DL%.PS ,AE\%Y=XZ:0<24=<+B!-(2$P"<8L2
M;XO6-%%BU.[M2<O6@> !.,;^\_FSY$8'J7W$Y^@#1K*8KD;7]4GJL&9[HB !
MDMZC4ZG,B3XWMSXZ1?D9=Q"4/J@=0L7Y#3@D910IF(!%6(BL;8R6.J(B'T]X
MHQ=\^(C=##,:L$.'/240I0#63A/#<>P:N  F&&%TZ:N 9B'.U3^Q<P?8*3DF
MNZ2&82B'>L[E'02\/3V^S.L6MD^D>HWY5[*2C@'7[#SYM;Z[WSRPMN+5=<%7
M176[J83DM5R)]\GUA]]%V'ECM_:?&=??C,^";0._[J+]!%!+ P04    " !U
MB)U:F5R<(Q &  "<)P  $P   'AL+W1H96UE+W1H96UE,2YX;6SM6EMSVC@4
M?N^OT'AG]FT+QC:!MK03<VEVV[29A.U.'X416(UL>621A'^_1S80RY8-[9)-
MNIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X8-DOV]:[MR_>X%<R)!%!,!FGK_#
M"J5,7K5::0##.'W)$Q+#W(*+"$MX%,O67.!;&B\CUNJTV]U6A&ELH1A'9&!]
M7BQH0-!445IO7R"TY1\S^!7+5(UEHP$35T$FN8BT\OELQ?S:WCYES^DZ'3*!
M;C ;6"!_SF^GY$Y:B.%4PL3 :F<_5FO'T=)(@(+)?90%NDGVH],5"#(-.SJ=
M6,YV?/;$[9^,RMIT-&T:X./Q>#BVR]*+<!P$X%&[GL*=]&R_I$$)M*-IT&38
M]MJND::JC5-/T_=]W^N;:)P*C5M/TVMWW=..B<:MT'@-OO%/A\.NB<:KT'3K
M:28G_:YKI.D6:$)&X^MZ$A6UY4#3( !8<';6S-(#EEXI^G64&MD=N]U!7/!8
M[CF)$?[&Q036:=(9EC1&<IV0!0X -\313%!\KT&VBN#"DM)<D-;/*;50&@B:
MR('U1X(AQ=RO_?67N\FD,WJ=?3K.:Y1_::L!I^V[F\^3_'/HY)^GD]=-0LYP
MO"P)\?LC6V&')VX[$W(Z'&="?,_V]I&E)3+/[_D*ZTX\9Q]6EK!=S\_DGHQR
M([O=]EA]]D]';B/7J<"S(M>41B1%G\@MNN01.+5)#3(3/PB=AIAJ4!P"I DQ
MEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7H5A)VH3X$$8:XIQSYG/1;/L'I4;1
M]E6\W*.76!4!EQC?-*HU+,76>)7 \:V</!T3$LV4"P9!AI<D)A*I.7Y-2!/^
M*Z7:_IS30/"4+R3Z2I&/:;,CIW0FS>@S&L%&KQMUAVC2/'K^!?F<-0H<D1L=
M F<;LT8AA&F[\!ZO)(Z:K<(1*T(^8ADV&G*U%H&V<:F$8%H2QM%X3M*T$?Q9
MK#63/F#([,V1=<[6D0X1DEXW0CYBSHN0$;\>ACA*FNVB<5@$_9Y>PTG!Z(++
M9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0'HYI9";V$5FJ?JH<T/J@>,@H%\;D>
M/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y?RY]SZ7ON?0]H=*W-R-]9\'3BUO>
M1FY;Q/NN,=K7-"XH8U=RS<C'5*^3*=@YG\#L_6@^GO'M^MDDA*^:62TC%I!+
M@;-!)+C\B\KP*L0)Z&1;)0G+5--E-XH2GD(;;NE3]4J5U^6ON2BX/%ODZ:^A
M=#XLS_D\7^>TS0LS0[=R2^JVE+ZU)CA*]+',<$X>RPP[9SR2';9WH!TU^_9=
M=N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D*TU*0;\/YZ<5X&N(YV02Y?9A7;>?8
MT='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-#AWE[7YAGE<90-!1M;*PD+$:W8+C7
M\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B?$R,1>APYY=<7^/1DN/;IF6U;J\I
M=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*POFH]M!5.S_Y9K<B?#!%.%@L22&.4
M%Z9*HO,94[[G*TG$53B_13.V$I<8O./FQW%.4[@2=K8/ C*YNSFI>F4Q9Z;R
MWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=WP6#R_7#)1P_E.^=?]%U#KG[VW>/Z
M;I,[2$R<><41 71% B.5' 86%S+D4.Z2D 83 <V4R43P H)DIAR F/H+O?(,
MN2D5SJT^.7]%+(.&3E[2)1(4BK ,!2$7<N/O[Y-J=XS7^BR!;814,F35%\I#
MB<$],W)#V%0E\Z[:)@N%V^)4S;L:OB9@2\-Z;ITM)__;7M0]M!<]1O.CF> >
MLX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[
MM'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+!WP?D@9CC%OT-%^/%&*MIK&MQMHQ
M#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'50.4_V]0-:/8--!R1!5XQF;8VH^1.
M"CS<_N\-L,+$CN'MB[\!4$L#!!0    ( '6(G5JP5$YQ6@8  &PE   8
M>&PO=V]R:W-H965T<R]S:&5E=#$N>&ULM9IK<^(V%(;_BH;.=-J9$)#$=9LP
M0]BDS70WRP9ZV7;ZP;$%]JQM45G.Y=_WR":(I/+!R\3Y$&SC\Z+7.I(>R3I[
MD.IK%@JAR6,2I]EY*]1Z\Z[3R?Q0)%YV*C<BA6]64B6>AE.U[F0;);R@"$KB
M#NMV!YW$B]+6Y*RX-E>3,YGK.$K%7)$L3Q)//5V(6#Z<MVCK^<)MM ZUN="9
MG&V\M5@(_=MFKN"LLU,)HD2D6213HL3JO#6E[V9\; **.WZ/Q$.V=TR,E3LI
MOYJ3Z^"\U34E$K'PM9'PX.->S$0<&R4HQ[];T=;N-TW@_O&S^E5A'LS<>9F8
MR?B/*-#A>6O4(H%8>7FL;^7#+V)KJ&_T?!EGQ7_R4-[;Z[6(GV=:)MM@*$$2
MI>6G][A]$'L!G%8$L&T >Q5 JWZ!;P-X8;0L66'KO:>]R9F2#T29NT'-'!3/
MIH@&-U%JJG&A%7P;09R>S.2]4&0.-4;:) L]);*SC@9A\W7'WXI<E"*L0H23
MCS+5848NTT $+^,[4*!=J=ASJ2X8*OC14Z>$TQ/"NJSO*,\,#Y]N()R-7.$O
MBL-W#XD7>KQ"[[WT<TA=3:[3LN&8!/S[ ]Q%KK5(LG]<CZR4[+DE3>M\EVT\
M7YRWH/EE0MV+UN3[[^B@^Y/+[QN)O7#?V[GO8>K6_?)I(UQ.\7#:;7]V64*C
MCK34WUGJU[/T.?>4%BI^(K=B(Y5VV<.EM,I=#V6&1AUI;["S-ZAG;RY4) /3
M+ GT#L[*PY5V#;&R):+Q1_H<[GP.:V:F\F!@*9IE=3WB6BLOSIP5B88=:7"T
M,SA""W69ZD@_D:LH%N0F3^Z$<AG#-6B;\E[?67=HX)'6QCMKXSK6;L4ZRC14
MGR8W7N+,4%QG>;F\G9*E\,-4QG(=B>P$NFG_U.4753K2+^W:D;9;QS$43BK(
MT6(4.2$+#0V32$5F,D^U>H+/P/D8#JB_OW0YQH..M;P'%[2.Y:7W2*X#:*C1
M*O++T;,ZFP](#GMM1GLC-N9.OVCPL7Z9]<OJ^)T& :A#(FX/2($*GU)WO>*2
MK#?N]R%I8)3*BE3I]<D-]'"ATSZJ=:Q]BTD4Y9#_V9^9,TCMI7Q(G=9QN64H
MR!]2!K&7!MF)TV\37$0M&%$<;5[[G4NHHIC\%6VJ6S&N.!SR4=?IM E<HI:7
M*$XYKYWN>JVYDO=1ZKN]XIK+/YU&FP G:LF)XL!3I.P4)L35-8@+L!%UVFJ"
MDZ@%)8K3S0?I0V+.0YEB('% A ^&;3H>N3O>)C")6DZBM4!IEBME>+"$P"A=
M%XF:NZ>TN.(7YT1XAD<=Z]-"$ZU%3<5P4*Z &+#WGHT[?>**53Z;8"5F68G5
M8J5%*.(86F*R\=(GE[D#,I50C\<=:\]R$:O%16 L 19::.E_!:]F\85\RC4,
M(FD R>LT_$: LWT,I5J_4#,K?O<3RGEWR,9#&(7N71XM"[%:+#2#M%30]URG
M@7@DOPIW->)27?@;]7KC@7LMJ GH819Z&$XISWW.5929/O:+\!0ZX3X@UVY3
MUN;.,02//-:HI1U6BW;,9!1F*^!N+96[-G&=J>\+D "!H!1S>FV"=YCE'5:+
M=Q:)!_W/19[!UYES%#F@4]T!-8$YS&(.PREEZ^\R$6IMALF?04&':$^+"U8;
M;0)\F 4?5G.):+]Y7L%%=VWB8I6KT4W #[/PPW!4>>UQN^I7[1*7^^SN?)H
M'V;!A^&8,@6#06DR]MPC(RY0G:!-D ZWI,-Q1-EG .=KA#<BE>U[A":XAUON
MX;2!%REOBCQOI?;R"5@JXCC*+",=P\1Y12C[X>Y'LA!^KJ G=OK&E0XDS@P/
M/];HWBNS XLWR@N*"=A3<B=CI[\# LMKIZTF((A;".(XO#Q7&+E\]$,O78O*
M9>L#0C=?%LX56SSL6'\6?#@.+ L8.V 6,B5S)58"R#9 NJ8W8IBM\2:(B%LB
MXH,&NJ8W@IOM$V@"E;A%)8[3S;=T3;C27NZ822V9YPH:2R9(L4O$:;T)@N*6
MH#B./-_0JG&ARE;=!#UQ2T\<AY\;25[VQY44=4"HZFTW'O:M_CI[^UG,#*78
MYI,1W[PA*[>V[*[NMA)-BPTT'7M[N0_IHV<F.!F)Q0I"NZ=#Z&54N;6G/-%R
M4^R.N9-:RZ0X#(47"&5N@.]74NKG$_,#NPU6D_\ 4$L#!!0    ( '6(G5I@
MALW:]@4  (0<   8    >&PO=V]R:W-H965T<R]S:&5E=#(N>&ULM5E;;]LV
M%/XKA%<,#9!&(BE94N88R*7="JQKD*3K,RW1ME!)]$C:R?;K1TJR=:/8N?'R
M$.MRSM%W+N1W2,Z>&?\FUI1*\))GA;B:K*7<7#J.B-<T)^*";6BAWBP9SXE4
MMWSEB VG)"F5\LQ!KCMU<I(6D_FL?';/YS.VE5E:T'L.Q#;/"?_[AF;L^6H"
M)_L'#^EJ+?4#9S[;D!5]I/++YIZK.^=@)4ES6HB4%8#3Y=7D&E[>8JP52HD_
M4_HL6M= N[)@[)N^^9A<35R-B&8TEMH$43\[>DNS3%M2./ZJC4X.W]2*[>N]
M]0^E\\J9!1'TEF5?TT2NKR;A!"1T2;:9?&#/O]':(5_;BUDFRO_@N99U)R#>
M"LGR6EDAR-.B^B4O=2!:"LJ.60'5"JBOX(THX%JAC)Q3(2O=NB.2S&></0.N
MI94U?5'&IM16WJ2%3N.CY.IMJO3D_)85@F5I0B1-P*-4/RI'4@"V!)\WE!,=
M:P'>@2^/=^#MFS,@UH13 =("/*W95I B$>?@3>=^YD@%3)MWXAK$304"C8#
MX!,KY%J ]T5"DZZ^HQPZ>(7V7MT@J\%/A%\ #,\!<I%OP'/[W]4]"QQ\"#(N
M[>$1>P]T1XLM%9>FT%2JGEE5C^)+L2$QO9JH82HHW]')_.>?X-3]Q>37B8QU
MO/0.7GHVZP<OP9*S'&PX2[:Q!()DZI&J"Z"_E\;46!^5Y6EI6<\\NSGT ^BY
M,V?7=L\DYD8!.HAU@/L'X+XU/;=,2%WPW)8F_Y1I.I&QCK?3@[=3:YKVWAZ7
MH,JFWXZ\Z_E3OY<@@YC^\\P)"@Z0 ROD.ZKB$*?E9'0.2,ZX3/\A%0THW"2.
M.=5W)N#! %$$?=B#/10* W]J!AT>0(=6T!_S#4EY-9MJE$RN*0>QFC]7YA"'
M Q ^#'M AS*N&65T0!E943XQ23(0]T: "5YD2*V'L-=#:!*+PF $)G0;GG*M
M0'_E3 A=M,M4&AG&'7S80Y$[[<$SB&$(W9$9!+9H%-KAT4*Q95;58Z*(.A52
ML^>. OJB>BY!C:#A  WRX""F)C&$HG $-&I (WN)%I*J"4;N(9Z#@IJ#BX;!
M#=  YE#*C_RQT#;D":VL-?]=)UX-]80N-%*9%JMM*M9Z9!FQ8LL8J8$.17P?
M^R- &_Z#=@+\7([PMVD1LYR>?3^HWG#6B::HCW4H]0Y'P5CN&\Z#5I*9_Z&6
M"!52\#93$3X#"ZI6!11(\F*> &J#G:BYX6" #:4@BL9BVY 6M+/6/6>[M%P[
M*)![X.-0372%@S[4H10.QR:JAJN@G:Q:@252\G2QE621*; ,/+U_>K@&JJ>/
MOZU9EE!N!A\,NAS/]:(^^*&4(K81\ UGP=#:"MT0D<:Z8/<N;#1GL3Q7@2];
M?V-O!*U,>&QS="IKW1 TA CMC'A4_O1H!PG+,J*N=:S*()T9@U1]-FC/2Q<N
M[J?5* 7->44->R([>WXME[-JB4=VBJ965"]]5:+KU9Q:W@NIF$O-K*5#U6.C
M%VC(GQ C[/>G6*.<ZACQB"<-T2)HK="[--MJ1XZM463E[V-K]%36ND%HB!O9
MB?O_JM'ZL]^I4;/46(TV/(_L/#^HT:1.]0]4Z9#@(<:!WV< HQR":*Q*FU8
MV5N!^_;BRHC0JG]T.9[(6M?;II= ]@6T=7\#G73E?"IK74^;-@39VY#7[''4
MIMN,'89PVB=V@UB <:MYZ4)O^A(4O'Z7 UE[FZ.3=2)K78^;9@;95^ _MM.!
MAFML+PH&.QTF,=]S1S8-4--^('O[\6B#9E4].CLGLM;=$FU:$NR^8E/4VLX<
MO2MZ(FM=3YN6!=OW!EXS:>#ATG\:1D%_ \L@%@33L24M;AH-C%X_:6!KLW)T
MLDYDK>MQ:ZO>WH7\V*11&VU/VKX7NOVNV" V]0.WOYAW6N<Y.>6K\IA+J!YW
M6\CJ$.3PM#I*NX&7M^6)4^_Y-;R\+@^6G,9,=3[WB?!56@B0T:4RZ5X$JG1X
M=>15W4BV*4^-%DQ*EI>7:TI4/ZD%U/LE8W)_HS]P.'B<_PM02P,$%     @
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
M   8    >&PO=V]R:W-H965T<R]S:&5E=#4N>&ULK9IK;]LX%H;_"N$I!C.
M4XL7W9K$0)K.8@=H.T':V?VLR(Q-5!9=BDZ:^?5[*#N6+![1Z2(?TOIR2+V'
M(L_SDO+%HS;?FI64EOQ85W5S.5E9NWDWFS7E2JZ+YJW>R!J^N==F75AX:Y:S
M9F-DL6@;K:L9BZ)DMBY4/9E?M)_=F/F%WMI*U?+&D&:[7A?FZ;VL]./EA$Z>
M/[A5RY5U'\SF%YMB*;](^_?FQL"[V:&7A5K+NE&Z)D;>7TZNZ+OK.'(-VHC_
M*/G8]%X3E\J=UM_<FS\7EY/(*9*5+*WKHH#_'N2UK"K7$^CXON]T<KBF:]A_
M_=S[O]KD(9F[HI'7NOJO6MC5Y22;D(6\+[:5O=6/_Y;[A&+77ZFKIOV7/.YC
MHPDIMXW5ZWUC4+!6]>[_XL=^('H-J!AIP/8-V$L;\'T#WB:Z4]:F]:&PQ?S"
MZ$=B7#3TYEZT8].VAFQ4[6[C%VO@6P7M[/Q:UXVNU**P<D'>%U51EY)\<=TU
MY(S\_>4#^>W-[^0-437YNM+;IJ@7S<7,PI5=^UFYO\K[W578R%4^%>8MX71*
M6,1BI/EUN/D'61Z:B^/F,\CWD#0[),W:_OA8TEMC9&U)T320YSLLGUT' N_
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
M*ZBL ;U?2VF>)K8C#A] V7]02P,$%     @ =8B=6CVD(.W<!@  L3   !@
M  !X;"]W;W)K<VAE971S+W-H965T-RYX;6S-FUUSFS@4AO^*QMO9:6?J&O%-
M-_%,X_ UL]O-)&GW6C%RS!:0"W+2[*]?@8EMA*#VSKG8FQCP.<\1THL0K\G%
M,RN_56M*.?J19T5U.5ESOODXFU7+-<U)]8%M:"&^6;$R)USLEH^S:E-2DC1)
M>3;3-<V>Y20M)O.+YMA-.;]@6YZE!;TI4;7-<U*^7-&,/5].\.3UP&WZN.;U
M@=G\8D,>Z1WE7S8WI=B;[2E)FM.B2EF!2KJZG'S"'V/LU0E-Q->4/E='VZ@^
ME0?&OM4[<7(YT>H6T8PN>8T@XN.)+FB6U231CN\M=+*O62<>;[_2@^;DQ<D\
MD(HN6/97FO#UY<2=H(2NR#;CM^PYHNT)635OR;*J^8N>VUAM@I;;BK.\318M
MR--B]TE^M!UQE("-@02]3="E!'THP6@3##G!&4@PVP13;I(UD&"U"99< 0\D
MV&V"+2480TURV@1';M)0@MLFN'*3S($$KTUH]#7;C5\S^->$D_E%R9Y164<+
M6KW1**C)%F.>%K78[W@IODU%'I\O6%&Q+$T(IPFZX^)#*)DCMD+^]VW*7XZ.
M3=&7NVOT]LT[] :E!;I?LVU%BJ2ZF''1D!HW6[9%KW9%]8&B]XR33)&V&$];
ML#P7U\<=9\MOZ(:4Z"O)ME3!N1[G?$J2M+[22"8H:3*-"[0@FU3=)O\GIR)F
MF&I;ONQ:I<@/?G).V[*DQ?(%W9>DJ#)2MTM!"<<I7PK1C"S]1XQA*"8X]/9W
M5E7OD.BLN'BB%:_'3T&-QJFWE N88%[35;I,581XG/"9%4M6\))EXIM'T1A.
M2]&<+F@F)+O7K;[7K=Z0S0'R%<E(L:2(</1 '].BJ/E"M1M:IBRI#U_3Y0=D
MX/=(UW1#I=%= ;LI4-\3GN;8= S#O)@]'6M2$688>C?HNA]DNAZV[&Z8WP^;
M8L^SG&Y8H @S+=>5:&$_S+:L;DRD0.F.[6A>-RY6M4P_:EAGD(S](!FC@_19
MW*Q3H8!<=9%>[7*MHY*BQZ3.'^77"X&/U88LZ>5$W.DK6C[1R?S77["M_:::
M%2!A/B0L@(2%D+#HA$&*@0IV)&;N)6:.2NR6+C-25:F8H)JYLYX#"E9,EZ1:
MB_MGOJVGU">*Q+)0K'L*<:B=;_EAOD4D^7N[FR11)B9.Q!DJ]M)%JY+E*$DK
M<9_<OI98D((D*2G$(O&A2L56^:*2N-GK/4T2^.C9G2MP2)@/"0L@82$D+(*$
MQ4"PSI5@[:\$:_1*N%<*^GVC9*%83GY0Y5+-ZFETBNW>77"T]KDZA83YD+#@
MI,X((4M&D+ 8"-81H+T7H#TJP#_YFI9(3)F"O:X?A\6T.WSWMWL]K1O2.F@Q
M6N]<T4'"?$A8  D+3^C7"+)@# 3K2,[92\X9E=Q"(3;T-FL>?@CG9?JPY>0A
MH_4=_=Z_O_V$JOHQ;<VRA);*V=#I3P"F*ZWV%Z.-.E>7D# ?$A9 PD)(6 0)
MBX%@'0&[>P&[HP+>F2S3VJY+FJE32'G( [AR>]K$=OUHV]'F:+USM7E*11^R
M8@ )"R%A$20L!H)U-.?M->?]_#ZMTI?7G_MT0W<E@?6C,);<$"7(D"P'?[25
MY^H&$A9"PB)(6 P$Z^@&:P>O6#O5=*-%TK7;_B#EWFXSE9:PUA>.:6-37O2I
MX@Q3FG2N%5&FZYJF]'SM*^*4EILJSG0L7>*%BCC7D]8'D0JF.Y;C20\2L;)U
M@[8;/C+U,: [JAXNW%](6H:A]8:K'X<-2Y.'JQ]E>KJCZ_)P]>/4PZ6(L_1>
M7*AJG6O()JFRJNV:NNQT*0-U&P^,U\',QN-N]KA1VB9W.D\S/7D@1DN<>^<'
MI?F@M "4%H+2HI/&*H:JV97;P9;'X[[\_]LTQ0K/V<*V+'?0GP9 :3XH+3BI
M/T+0FA$H+8:B=>5^^(D C_]&\%^=4=RW[PW7Z0D1U,('I?F@M."D_@A!:T:@
MM!B*UA7BP:''XQ;]>0XI[IO1NHME]8$:\Z T'Y06@-+"4SHW BT90]&ZXCNX
M\WC<GH?W2G'?:\9.;TV_&&_7V1(%]?%!:0$H+02E1:"T&(K6U?+!]L?COO]9
MMBGN>_K8M>4?XL<KGJW24VKZH#4#4%H(2HM :3$4K:N^@V>/QTW[00,5]_WR
M*<9F;\6HL-7E%\K4*,N5%01JOH/20E!:!$J+H6A=!1T<>#QNP9]JI%I*E>W8
MQ^_JZ0YV9(MTH8C#AMT36C_*] Q3-V6E]>/4SIPBSO LVY(?$Q1G@>6GVDA9
MU38-^:DC5@;VG;G9T9O2]<O\HK,?TZ)"&5V)/.V#(RZX<O=^_&Z'LTWS\O0#
MXYSES>::$K$BJ@/$]RO&^.M._3[V_K\4YO\"4$L#!!0    ( '6(G5H5-6],
M"@@  +TC   8    >&PO=V]R:W-H965T<R]S:&5E=#@N>&ULK5IM;^,V$OXK
MA%L46R!>BZ3DES0QD/7N]A:X;8/-]NXS+=$V6UET*=I)[M??D'(D6WQ)4N1+
M+#G#\3.<EV>&TM6]5'_5&\XU>MB657T]V&B]NQR-ZGS#MZQ^+W>\@O^LI-HR
M#;=J/:IWBK/"+MJ6(Y(DX]&6B6HPO[+?W:KYE=SK4E3\5J%ZO]TR]?B!E_+^
M>H '3U]\$^N--E^,YE<[MN9W7/^QNU5P-VJU%&++JUK("BF^NA[<X,M%2LT"
M*_$?P>_KDVMD3%E*^9>Y^5)<#Q*#B)<\UT8%@X\#7_"R-)H Q]]'I8/V-\W"
MT^LG[9^M\6#,DM5\(<O_BD)OK@?3 2KXBNU+_4W>_XL?#<J,OER6M?V+[H^R
MR0#E^UK+[7$Q(-B*JOED#\>-.%D >OP+R'$!Z2]( POH<8'=N5&#S)KUD6DV
MOU+R'BDC#=K,A=T;NQJL$95QXYU6\%\!Z_1\(:M:EJ)@FA?H3L,'^$C72*[0
M@M4;]!G\7*,A^N/N(WKWX\_H1R0J]'TC]S6KBOIJI &#T33*C[_WH?D]$O@]
MBK[*2F]J]*DJ>'&^?@386P/(DP$?2%3A5Z;>(XHO$$E(YL&S>/GR- *'MOM)
MK3X:T/?[CBNF1;5N E1HP>M+WS8U:E*_&I.\E_6.Y?QZ -E9<W7@@_E//^!Q
M\HO/QC=2=F9QVEJ<QK3/?X-:(ZI<;KG/S&;MV*XU)>4P3Y-T=C4ZG,)WA68X
M:V7.4&4MJBSJAV\\EU4N2L%LM8!PKEJ<2$M[EYL WREY$!"*:/F(WNUKN!#5
MSTB^U(W96[KQC92=;=BXW;!QU(T?.2C-F^VZ0&PKE1;_:S8/,AVV(5?<W/DV
MH=&<G?L/]YSL"DTG6<#+DQ;T) KZRW;'A&HJED$I]88KE&^86G-O<9HX(#(\
M[0%U91(_RFF+<AI%^2NP*8)]%-6!U]JB]6&;.K\[)-FD!\XG-)D%MG'6 IQ%
M 7[Z>R_TX]#088$@0Z!'J!O7\P=S[<WLF8,$3\=)#ZY':$RH'RU..LY*HGA-
M<A^X>C1I#6%9"(U*6==^EQ]UG6W9-.OA] GA4 W")^2*HT!O^FETW$\#?"4J
M!A4*2DPN:W]$'+6?HDIG#G17B$X#$8M)AYQ$D?\;]M/$;,&7&E";4K@7]<8$
MKQ<IB23-$:<KDF4TM,4=W^(HN;7)5;/2;BN#. CL)O7YF/9A>J3(+("RXTC\
M#$G*:FCI)M]O]R4SK2N"'AR:S J^4HI7^2/2BE5U>0R6XL]]4RML:*.5DEM4
MB!J:M?T3HRU8Q0K!P/;]LA9PI1Z]=J=N><[PN&^W*Q4*HHZ#<92QYK_;<ERU
MMMM4]?LF\_B&]"NS3PIB* "S8SX\CO8*BPVK@"],9WO"^S:.;-)"$[&$3B+8
M ^ HL[ZV"7@K;>>;T3$JCE/J39[+O>%3Z :X.+!EZ:W^V&7)(<ZR:=IWF4]N
M-DY">=]Q*HZ3ZA<@TTI+)0)5WT>4X[&3[:X8SE(2 -?Q*8X3ZJWBT)BTY?ZL
M.;'9KF-URB7-,<Z<7'"EAG1VTLR<3U,=MY(XMWY7K."FW6NB8,<>30BT/>">
M=U;YP!,/D<[(I-_&^,2R[$3L''U'N"1.N+;B>'&Y+$D<*O4)C0.0.B8E<2;]
M[?63AM< ES[IC#H6N%)#3*<X9$5'LR0^UWZQO>L+!B+RIH/M6VD[M[JC;1*G
M[=N]@F'")##0+?@/?*4?+]"N9":#33\'G?/.L/2%F2B]^^'RZA!#Q][G7Z]<
M-B6AE.A(F,1)^%;)G//BV$(\M4G/S"+$95H\2W!_IO.(!9H&TK$QB0^B?KS1
MS?=:X,Z;>$KZ^%TA<C*XGEO042B)4VC3]@A/QGB!N@R)DWZU]PA!% 5XBG0D
M2N(D^DQM>K$)'A:EJ5.;/)2,LTD:HJR.;<DL6IL^MY/4<[4IRMJOKDUOI.W\
MG+$C:AHGZO,\.8[!;*TX[\Y#2EFMAYJKK9WCO,>0+A'/^J7)(X.G:9H%2(5V
M;$WC;'VK!/AMQTK39AS/G:M_;HK+WD/7%H\0'E,2FO5IQ_,TSO.W)R9TLWW)
MF1GWEZ58V\'.FS_4P]HSVB^V/BD2:IGHR8%U?(#^:"9\&"SW@)B'SR*H.Q?W
M)WR/R# +(^Q8F,99^&[#(('0O=";#2\+,S@CS1ZXW6H>.KOR&N$C6;>W]HD1
M2@.G +2C8AJGXF?*[<I3Q[Q6>,9@DDS[I^H>,4QIJ-S2CJ!IG* _K58\UX:4
M^4-N1V<$'2Q'^7&,-BD,1GJ1NWP[=@Z*/4)#2@-]!>U8F3YS5EQ!83')^*[@
MS94AN,8?IL#8"Q--!V@Y FT1=6F83M-^5^&1@AJ3I:%ZV=$UC=.U>2)WX0"U
MZ"%!M!*Y>8K76*31DJ]%59EP,OT35T(67IM<6J83XG0@'K&,I--0V>S(F\9'
MY=?9Q,T<';7&'8M3G&1.J7+%:#8+97C:D7*:O/*Q4_YR^[1$T#E"$3MY)+MD
MI:W+]@FO-R;3:)OPVJ;FK;2=[U_7$:3QCF 1RL87.3_UG)?C).D[WR,6<W[7
M :3Q#N#;/XC7U',J[N"-':Z?8^U8/XVS_G>IH>UZ17#VC8&(E/?FF98;L_79
M:P1V]<J\1N"UG[H/B#WYZA'SN6QT\B+$EJNU?3^D1O8LJWFEH/VV>0?E [Y<
MV%<U>M_?X,L;^T;&J%/3O-CRE2DHJS4T=BM0F;R?@%M4\ZY(<Z/ESKYNL91:
MRZV]W'!6<&4$X/\K*?73C?F!]HV=^?\!4$L#!!0    ( '6(G5K&GBHS< (
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
ML88">8*44M&2I#8M2),Q*3B']([0EEM5A,@\:\KC$7EEC[.A&A>$,6"9!/0
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
M,5*9X*7/Q@Y:JQ+H4Q,-)MN9^3\2$WJC9_HZ^%%; &$YOI;7CCIAOA66L_R
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
M[/,KG_7$#;Y9[LX&@"73A<TR\KZM  ^WP,J$\G',L+Y\(J(6Y])/Q!7:IY]
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
M#(L"DD4 "OL[6J9.(1;H.[U#Q<#;EY\S4:UOJ1F*$*W,.9&^):.47,L"'6T
MWF\59=NZH3C(\11C3 \$06AC!9B/A&Y,A$I;D]NYSP]1I7_,K^:H9$2=\U24
MCE.9A20IZ[R\>OTZ]_O44VDODE&4&I[Z5&CH*$BW:PMQ"D<N&(4.%OB+ !NA
MULL,S6CUTDG>&#(FHW@PRCB>_!9'#6@[J;_U5+(*<9C<_?8(#MZ7]O:Z:%SS
M,U3D"D%BQO, KD$A6H!*D*Y2*YI5M-0CH[MKR!8$+J9@WH.S1UE1)R?O(?R(
M^)"11R4%%%)4)(@KJ19:)O0NALIP=I9#1CIX"T\A2$^Z&&4M\1Z!W ;UOS#1
MZMEZ\7@Q\[<4U /NI(O0U:*(QQF.>EBXJAJ<)&/TDS#!@HV8G:<.$5T1WB5U
M]5.":$)>LD=DL+0-HX"K];7I55SHL%8F%#09VNA;"2DLZB2GE!!G1HWWY+JA
M-:]U":CR$2BJ6W7  ,>/&/Z=<= CNQ!$0=]A6@(\6<4A:Q#WI,C>M1#DL8YZ
MHV'G)H]-\]4&'G:([K'P$.%&1[!%L&I/$Z/6(762(1'<CSVL6@BG?'IBC@9/
M*R..P6V@0SFH[#4AYJ&C\C9<[^AN"^=$6DZUW SCE=A-E3SK2'K==>ZDJZ'4
M[K.\I4E)G_NX+'U>NQKGO >"K+2_%HAWT>CLR6:4A +EP2R'9EEV%%=Q<V+B
M][1Z+]?,>]9)8'+8TE00UT<LNF\H8K$QEJ/.MC08X85R8F RY&EY)8JQW$&S
MDT[*S>_25N* ,A;K)W2[;I@.@CY,@RB/F>$;_C+>?8]BQ,RMMW':0^""<PX\
M:,6F*].=A?JS*U=,'4&ZU#?.YZZPP^^,!E9<Q FYHB\J*FWKL"?F?1XD>5'6
MYZH8]GR'>(.J&VHI$;U#N.1B4SHR$L8:!M_&ETZRW9X*:$#DRG[8D2R1WG/B
M^8#XY'[TG#+/\2^SO4.I_@IKSI-,K/&DL=JUJ:_/.2*MW&@Z-J+2#>.""0Y+
MF@5)%,=6 1&IM]KRUA+)5RZ'N)H2)6&*KHOX/+H$*[N*^6'V8F83/E#^B(Z<
M,"I4LP@U>&">%ZI9[&9XVKM<XG@N)VG*.1N#W50/I.(E^*S<MJ'9("?ZE*SV
M,"/S&W$"(:4(R;JJ[,=%^6QU>G<LHLN.4/9<71$:O&-IS\@N8I]F7F TY[C[
M8 29/FDAZQ(B7[]WU9+\[J(&,BST7+UA.])4C(H*_A\F'4EHJ6.4^'@P$RV?
MX.Q.6]87Y"DHVT_QM<>C542^7))(+V%*6:/V8+C%H*L"&O/DUQF\'P];4M?4
ME04/ 0$C1$Z['/46TUJ/]Y4S\0CG=R0G3!R,N<Y3[;=4\.U68+AXD4#.QHJ3
M.LKLG^)H"JPCO;PQ"]]1R!^?IL'6A3>HIJ\A[>I6AA2IS!"0J>AVA[Q'>@R
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
MHI/(67Z"Q[$JB(/_V"1C-B:G_+F>T?2ID\T=%N!WN=)VC[XWV4AIK6;4-+L
MS92<^ 776_,IMN%/(L>^C/HJE"OF6C\3BGCN3MIGMU@Q/E&_?,#VG+I1Y_T5
ML;DC-N>.#7+V^IW5QSG*\+U#V+C0;C41)BX,W0ONK[MG:3>NPW+0$W?I9YA3
MV=^,U;/UO>+07Z?-R?VE).(;RX!A&8QQ:V?_\*#%M+_H\R]63=WEVDA9JW(W
M3($GH(D U\<*52Y?Z(#ZMO7T7U!+ P04    " !UB)U:OBIWP= "  !5!@
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
M>QQFU?I#&QA9N1%;28,#ZY8Y6BHHFX#G:RG-+K %>I-.?@%02P,$%     @
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
MHKQ(&BL##=+'JI(:7CR)+(VI*"&#64W7O<"";Z ZET0:C*Y4KDR43*B!6K\
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
MT^#B<NR!;@=->[&J:II[JRR-BN98T&Q&[13H/5/*'B[.03_MX[]02P,$%
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
MM338DMRRP'\ *&N ]QLIS7YC'?1_E?0?4$L#!!0    ( '6(G5K1DJO.K 0
M *$*   9    >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;+U6;6_;-A#^*P>U
M*&R J$5*U$N:&&C2I0NP;D'3K1^&?:"ELRU4$CV22M+^^ATI6W.+).V^[(MT
MI'C/O3U'W>F=-I_L%M'!?=?V]BS:.K<[62QLM<5.V9=ZASU]66O3*4=+LUG8
MG4%5!Z6N78@XSA:=:OIH>1KVKLWR5 ^N;7J\-F"'KE/F\SFV^NXLXM%AXWVS
MV3J_L5B>[M0&;]#]OKLVM%I,*'7386\;W8/!]5GTFI^<I_Y\./!'@W?V2 8?
MR4KK3WYQ59]%L7<(6ZR<1U#TNL4+;%L/1&[\O<>,)I->\5@^H%^&V"F6E;)X
MH=N/3>VV9U$108UK-;3NO;[[&??Q2(]7Z=:&)]R-9],L@FJP3G=[9?*@:_KQ
MK>[W>3A2*.)'%,1>002_1T/!RS?*J>6IT7=@_&E"\T((-6B3<TWOBW+C#'UM
M2,\MK_J:C)C/<(,;RK6S,/N@5BW:^>G"$;X_M:CV6.<CEG@$*X%WNG=;"S_U
M-=9?ZR_(K\DY<7#N7#P)^$Z9EY!P!B(6\@F\9 HV"7C)(WC[&.$][K1Q3;^!
M/U^O*'JBQE\/A3NBI0^C^78YL3M5X5E$_6#1W&*T?/&,9_&K)WQ-)U_3I]"7
M-]1^]= BZ#5<-KWJJT:U<-6/?>@)31\.17O(^2?A'W;^)G1F\P5K6$\FFR.3
ME>XK-+W/G-LBK 9+L-:"/9"GL: LK'5+S6Y/X,/6('[%"J":5MNIJ'"ANUV+
M ?RR'9K:P@O5[5[!M='U4!'B1^70[#<O"76EJD\4M[EM*K2D;JB4= 0^:$?.
MSIJ>/-.#57UMYU3H6^P'A.=0)BSF!0E9RK@0)+QX5@@N7I'$9<YX&A.8=3ZK
MN]$V6$5] (0$]F!/IBSA$F3,A(PG"!ZG3&82WB#EDI+FPV&@.D^R+V/F/(JJ
M*C.&*AC/<\A84<10IE R+CE<=3O5F#&/_KBF%!NHMLILR/+!EJ0HCN6WV*.A
MR(.!FFZ(QA/:7W6 ]W1U6R0[69& 9'DB@7.6\PP$92%)B4Z47*2H*6^5[G!^
MT&'0TP]AQKF<PRR?0\J*-*-G+E+X+?CUB$;.RSG%DQ%XFD/!RDS K_1A/ VS
M5ENJRPJ)4PA.W5-DSR&)64;Y> ZS@E)2S+W$,Y;'B1<EBXL,+M2N\14.YNK&
M#2:H\H0\2TA(69RE_EWZW9R5,ON6:R-%E+7H@E5.UE+/"9X)EE#]/)Q@1>[I
MD7%"+.1W*9S^;Q3.<R8*[UJ>L*R,OZ%PS$KR^P<HG!8LI4Q1R-DQA8D8G*?_
MA<))X2DLB@(*3I7.*>$_1L8RH6K)./%DY+$ (9@HB^^2461$K3PC!)Y2"U*%
M!?Q"= +RIL:5H^/^3A\:NPVW_"&TJ5N83.3^^12'!37X3*9$PQDE.I7A7>:T
M_BZ1><GR,I1(\$#BD@D>^,PI1/D8B7.BNF=?P>)4ADJ'DK)"Y%20"KL5.3OQ
M[1L:BS)F>1%H+*FT>:"QI/0D@<:Q9)PL/_1'6AR-#1W2+>.'(TN7_-"[<8*8
M=J?YZ_4X=OQ[?!S>J"4V36^AQ36IQB]S&8$9!Z)QX?0N#"$K[6BD">*69D@T
M_@!]7VOM#@MO8)I*E_\ 4$L#!!0    ( '6(G5J3_744T 4  /0A   9
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
MTJU6LZ,+K4E#;7>@TDI<H%NO)4@/0L<YUFT[S(&.[9_0;>U%H-J,7*#;LXY
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
MH%'O#=77];RL ZLJ/W+NE*4!YI<K^L2@=@ET7BAE=X$KT'ZTTE]02P,$%
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
M3F>RD\AP)X>GB3.'X;#>)"&AV2110Q(%2;JNBB)375=;B/TB84#95@GAMDB
MHWES@X1F<V/$? BK^<NZ%NJ]%E3:1EUK+Y4I6-;#<-ZYB"KLL=!L*HVT#W&U
M?8@J[E'1&!::3:71]R$L\#V'-4S9?CV@;0Z28>!4.@PKL,V2T?@A+/*/'==0
MM?Z %H;V*!E$VV:*8<6UV3%Z/X0%_^=&U8J7:=M[4O<-HBL8PIN:Z4[/V>DQ
MT"EV0XV&#V$1_TDH;?9J4BW(O!_!*]-T9ZLQ%?KU@+;IEZ@S6=Y"RH=&RX>P
MF&=B(61[LW"1E;R<=V-*5:O:21"J<A_0DMT!99NALWTCC[N+4*.X*2A#9Y?S
M>273]O;I0G#52.<X 6/XMGI L[J%4VLRK+@V-T9"4UA"7S[S+.>/6=[:WZ9,
MA20<4D PG#=-NY+\=!HZ:7H+$4V-B*:PB/[XK6D)REYO+&4EF0NIN/Z[J*3(
MEB6IF\<Z2S,N,^%,*SB"-W.#7*?61#39GH6P@MJT&7U-_[Z^)G^M5S ^/PM9
MMLM%Y&8]/-WK^9R\>_A\<^^Z^W\%!_9F$U6)8Z'9I!LE3G&5.$55XJAH# O-
MIM(H<8I\JQW&\^;2?><^"+>S_"V4.#5*G,)*'"?+]9EW6=D:'R>QJ#(>%8UA
MH=GT&ZE/I[CYCBK[4=$8%II-I3$3%#83_OF.:B8&M*U)/:#;Z?X67H(:+T%A
M+X&7[OU]#B>OJ!X$%8UAH=G[#XR;B7#7#R)48X.*QK#0;"J-^8E@\^.=[C">
M-Y>A<WJGVR(>*ZK-DO$^$>Q]#N1[^T.7V$["4$T/*AK#0K-IW=A(%.'F,>Z>
M(MQ-16_A>"+C>"+0!OR-/$:U/ /:09F.%=5FR9B9"#8SQ^8Q+,3A(-[4H>XY
MPD*S"38^*)K@9C2JIT%%8UAH-I7&TT3P\H5_1J.:F@%M6XCO)/1;N)7(N)4(
M=BL^";U?:L-!O)E#W?^$A683;)Q.=(:;T*BN!16-8:'9&W^-:XGA-1COA(;Q
MO#?_!D?M;F%846V6C"&)#ZS&P!E]H[^^:<JT)A\7"]$]O[%7><.1O/E#W1&%
MA6:S; Q-3%'3.D8U,:AH# O-IM*8F!A>X/%/:U07,Z#M*.^=M'Z3IQXV'GN
M_0G2';/+]']-K=HQH)+D7GQKLK;4%2^_ZJ.NULZ%1[ARWI2CKN]@H=D7QEBB
M.,$="5#-#RH:PT*SJ33F)X87@?Q' E3W,Z =4NQ806V2C*V)85MS8"#H]S*U
M6YGZ'YVTH1H=5#2&A6:S:_Q0?(J;S:C.!Q6-8:'95!KG$\-K/'Y;4&$P;R)W
M-X)1]PY4K+CV8WC&TR0']I4=F-8U;6V1O4_(P/"^M*&B,2PTFUICA)(0-943
M5+>#BL:PT&PJC=M)X.4;OU2&P;R)I#NI'(:)*Y6QXMHD&1^3P#[FX46G;[UZ
M3>,;S4^^CR%4!X.*QK#0;!:-STEP=YXEJ,X$%8UAH=E4;CSC#2_6''R$&2[O
MS9U[IQD]VW;26&%M6HS+2&"7<<QC#3"$-S.3G2%L9^QZ"U.1&%.1'# 5GENX
M83AO?G:?Z7!O=,<*:[-DS$$"+Y:TSRH[V4 U 0<J$04DY3]<=VD85CUL>HS@
M3V#!?Z._:E]%<\Q3D#"4-V6HRQQ8:/9[)XPEF.!NSIJ@6@!4-(:%9E-I+, $
M7@LY9JB'(;SIVWT:Q2U6L<+VS(PWWB55"+GLWLE5DWG[*HK^M5+K;]?O_;KL
MWG8U-J?W+PV[XW*9E37)Q4(7#4ZF>K:6_7NX^@-5/75OIGJLE*J*[N-*<#UE
MM"?HWQ=5I5X/V@#KMZ'-_@]02P,$%     @ =8B=6D#SZW:%!P  C4T  !D
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
M*D]0QQ=I*A\WR@*V*[#-_@=02P,$%     @ =8B=6EK6&4 Z!P  XSP  !D
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
MXM\+&O/=-(#!\P=W;+E2V0?A;+(F2WI/U=?UK=!78:FR8 E-)>,I$/1Q&GR
MYY=XG 7D([XQNI.5]R KY8'SI^SB\V(:1%E&-*9SE4D0_;*EES2.,R6=QS^%
M:%#^9A98??^L_C$O7A?S0"2]Y/&?;*%6TV 4@ 5]))M8W?'=)UH4U,_TYCR6
M^5^P*\9& 9AOI.))$:PS2%BZ?R7?BT94 F#O0  J E#3 %P$X+S0?69Y65=$
MD=E$\!T0V6BMEKW)>Y-'ZVI8FDWCO1+Z6Z;CU.PC80)\(_&&@AM*Y$90/4=*
M@E_ #1%/VD9W3#Y)0-(%N**";4G6=?")+I847/)4"3T/$IQ<4458+$]UW-?[
M*W#R[A2\ RP%7U9\(W6PG(1*9YO]9C@O,KO89X8.9*9__PQ@^!Z@"/5KPB_=
MX5=T7H;W[/!0]ZAL%"H;A7(]_&:CWH,/4E*U;\HU(P\L9HI1^=S !=#VO*/S
MC1 L7>:C?N>I*#^X()))\->U_@'P6=%$_EW7G'TVO?ILLL5]+M=D3J>!7KV2
MBBT-9C__! ?1KW6M\B1F-0Z7C<,N]=D7KDBLO;"E4N7>JJMV+S'();([SW8V
M'HP&DW!;K>+U(#2"_7$YRDJO5Z;7<Z;W&U\P\E27DS.N[0QX$K-*[)<E]CME
MW;[/QGD2LQHW*!LW^''K[B7Z%5=&+WS[>@0<X3&N]^VPS&WHS.U>Z=DA(IM&
MM6*;I"XUIT+;B? D9A4[*HL==<K!(Y^-\R1F-6Y<-F[\XPX>O_9G!%_>?&L&
MP<&HWL,P,O01.?/[0ZVH>"L_MT;;Z?"E9E=<X2W8*2L7Z?AJGB<UNWF&P:"3
M5)K9N="H6G4T&+Z\*=>-ZH\/&=K #G33SLDUW=(8P%/P'SB,%FZ1UI/B2<TN
MV0 4['7+T5[!S)>:W3R#9M ), T=[96H"K6&/ (-+$$W+56MWX1.W'*MJ_*D
M9A=O: P.N[4(O+*=+S6[>8;NH).!&BZ"41-,J1MUF%,,1D$W1U6]W8Q9G'JM
MY\>3FKWS82@-19TR-_(*?+[4[.89X$-.)FIF[D+#]5^D<XB=6V5/R\U3A:V1
MFU;<(JVGXQB;4<@ &L+=\K)7U/.E9C?/H!YR;Y8U\[)7/BO4FMC>0!=R0U?5
M]DU(Q2W7NJ)C;&DA@VEHT*T%X!7S?*G9S3.8A]R[;LT6@%<V*]2:+  #7,@-
M7-4%T AGW'JM2SK&EA@R,(?&W5H!7EG0EYI]F&-8$+MW[)H=YW@%N$+-8GH\
M.L#TV( 9=H-9L0BP&W[<(JU+.<;^&3:\A[MUB(F]DJ,O-;MYE7-,'P>97G&O
M4&MP[\>&X;";X:JV;P(_;KG6%1UCNPT;\L/=.@K%7LG1EYK=/$..V,-Q*'[[
M/-0YQ,[-@!EV@UG5U8V(QJW7>F:.L8&&#<_A;IV/8J\XZ$O-;I[!0>SAC+30
MJ#Y\4G.H5#-JB.!+<X>5Q[6R9^5NB%BR5(*8/NJPZ&RH5X;8/WZVOU!\G3_!
M]<"5XDG^=D7)@HIL@/[^D7/U?)$]%%8^!#C['U!+ P04    " !UB)U:XSV5
MS=0"  ![!P  &0   'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6RM5=]OFS 0
M_E<L)DVMM!4"@4P=04K23>M#NZK=CX=I#PY<@E6PJ6U"^]_O; A-,XKVL!>P
MC[OOOOLXG^-&R'N5 VCR6!9<S9U<Z^K<=56:0TG5F:B XY>-D"75N)5;5U42
M:&:#RL+U/2]R2\JXD\36=B.36-2Z8!QN)%%U65+YM(1"-'-GXNP-MVR;:V-P
MD[BB6[@#_;VZD;AS>Y2,E< 5$YQ(V,R=Q>1\%1E_Z_"#0:,.UL14LA;BWFPN
ML[GC&4)00*H- L77#E90% 8(:3QTF$Z?T@0>KO?HGVWM6,N:*EB)XB?+=#YW
M/C@D@PVM"WTKFB_0U1,:O%04RCY)T_K.?(>DM=*B[(*10<EX^Z:/G0X' 8@S
M'.!W ?YQP/25@* +"&RA+3-;U@75-(FE:(@TWHAF%E8;&XW5,&[^XIV6^)5A
MG$ZNL5$N>2I*(!5(<I=3">3D C1EA3HE[XDR%K5_,4Z^Y:)6E&<J=C42,#!N
MVB5;MLG\5Y(%Y$IPG2ORB6>0O8QWD7C/WM^S7_JC@%=4GI%@\H[XGA\.\%G]
M>_ATA$[0BQE8O. 5O)^V:2 CBQU(/ /DNB[7J*K8M,(J\K762J-XC&_)+:2"
MIZQ@U#;TK\5::8EM_7M(V#;Q=#BQ.>KGJJ(IS!T\RPKD#ISD[9M)Y'T<4N4_
M@;W0:-IK-!U#3YXE:?9JT4XM[,(2A>A:31Q(=6(:K[6?#JG3I@QM2C.W=LDD
M\(/0B]W=8=U#;MXT#'JW%Q6%?47A:$4+A2,0RX!'D"E38&J#AYKI)T(;*C-%
M3L;9AW_3FGJS(^X#3M',&V8>]<RC<>:=\!DK:O,CAI0?IQX-*!K,PF/R0V[^
MQ#\6WCV88R7(K1WO"ONBYKH="KVUO4&6>(/827MDQYME80>J^PS37DMXY+>,
M*U+ !B&]LQF2DNVH;S=:5'9:KH7&V6N7.=Z.((T#?M\(H?<;DZ"_;Y,_4$L#
M!!0    ( '6(G5H$T'Q+*P(  *X$   9    >&PO=V]R:W-H965T<R]S:&5E
M=#0S+GAM;'U4P8[3,!#]%<M(""1HTK1=H"21VEW0[F%1U0HX( YN,DFL=>Q@
M.\WNWS-VTE"DMI?$8\][\V8\X[A3^LE4 )8\UT*:A%;6-LL@,%D%-3,3U8#$
MDT+IFEDT=1F81@/+/:@6012&-T'-N*1I[/<V.HU5:P67L-'$M'7-],L:A.H2
M.J7'C2TO*^LV@C1N6 D[L-^;C48K&%ER7H,T7$FBH4CH:KI<SYV_=_C!H3,G
M:^(RV2OUY(R'/*&A$P0",NL8&/X.< M"."*4\6?@I&-(!SQ=']F_^MPQESTS
M<*O$3Y[;*J$?*<FA8*VP6]7=PY#/PO%E2AC_)5WO._]$2=8:J^H!C IJ+OL_
M>Q[J< *(H@N : !$7G<?R*N\8Y:EL58=T<X;V=S"I^K1*(Y+=RD[J_&4(\ZF
M#S+'(/J%[*#$6EM#WI-5GG-7,B;('5C&A2%OAL7;.+ 8U6&#;(BP[B-$%R+,
MR*.2MC+DB\PA_Q\?H-I1<G24O(ZN$CXR/2&SZ3L2A=&"F%[W%=[96(J9YYU=
MX!TJ0+;0*&VY+,FOU1YK@XWS^US:/=O\/)L;IJ5I6 8)Q6DQH ] T]>OIC?A
MYRM:YZ/6^37V]%M;[T$351SS)SBFFKE;,^>T]FP+S^;F])!&<7 X%1"<]% -
MNO238DBF6FG[=AIWQV%<]3WXS[V?9+R@DDM#!!0(#2<?,*[NIZ,WK&I\1^Z5
MQ?[VRPH?%-#. <\+I>S1< '&)RK]"U!+ P04    " !UB)U:79MZ4_$(  #:
M0   &0   'AL+W=O<FMS:&5E=',O<VAE970T-"YX;6RUG&UOVS@2Q[\*X5LL
M6J"IQ2<]=!,#K76]"[#=*YK=VQ>'>Z'83"Q4#UZ)3KJ'^_!+R8IID<PX4N6^
M2&QG.)K_2")_,Z9Z^5A67^N-$!)]R[.BOIIMI-R^F\_KU4;D2?VVW(I"_>6N
MK/)$JK?5_;S>5B)9MX/R;$X\SY_G25K,%I?M9Y^KQ66YDUE:B,\5JG=YGE1_
M?A!9^7@UP[.G#[ZD]QO9?#!?7&Z3>W$CY&_;SY5Z-S]X6:>Y*.JT+% E[JYF
M[_&[F$?-@-;BWZEXK(]>HT;*;5E^;=Y<KZ]F7A.1R,1*-BX2]>M!+$66-9Y4
M'']T3F>'8S8#CU\_>?_8BE=B;I-:+,OL]W0M-U>S<(;6XB[99?)+^?A/T0GB
MC;]5F=7M3_38V7HSM-K5LLR[P2J"/"WVOY-O72*.!B@_[@&D&T#, >R9 ;0;
M0%\Z@'4#6)N9O90V#W$BD\5E53ZBJK%6WIH7;3+;T4I^6C3G_496ZJ^I&B<7
MU\5:':3Z$]V(>W4Z98TNT(VZN-:[3*#R[NEC]#$MDF*5)AFZ+O976W/67L5"
M)FE6OU:C?KN)T:L?7J,?4%J@7S?EKDZ*=7TYERK*YECS51?1AWU$Y)F(*/I4
M%G)3H[\7:['NCY\K=0>)Y$GB!P(Z_)14;Q'%;Q#Q"'?$LWSY<.88'L/#8[%Z
M;GA/#3V<,-KZHR\^8=TY0/_Y69FB:RGR^K^NM._],K??9GYY5V^3E;B:J0FD
M%M6#F"U^_!OVO9]<.9O263R1LUX^V2&?#/*^^"(>1+$3KH3M!_KMP&;^?%A@
M'F#F7<X?CE/A,O.B@/3-8C",D2+Y020'12[+6C9W\[8JU[N51'62B1JI^Q,U
M1TI7PGF?[GWR8V$>XSXW]#O,FG_,T ]&.%*_?]#O@_ICH9RJV:N9M-Z@)"\K
MF?YO/X4U24A6JTHT[UQ9\"UY$>;8R(%M% ;<-S( QC@R \$A P&8@>M\FZ35
M?L)H))=R(RJTVB35O?OD!Y8BCD-#-7C(H9/ 1,YZV0D/V0G![/Q#%*)2:UM[
M,:S5,INJ*39IB 2);PJQ:N?\$%HI(@Q3X[I?.JP(B8Q4QF!\(]5'!_41?&T4
M4BBO$KU*BU69B]=/HM^@0DB7\LC2Q )B"K>->,3-61&,;*1N[&GX\4#E/Y=U
MC=0DL!:W4HF6:7&_2^M-<YLXP<6S))F+@<.$<VI,F3$<UEC91\R'0=G_:F_^
M%Y_MSEMO=HM\8BJWK2YH%)@7.AS:6.E$2R>@]%]4*;77C5YEZNR_1K="\:Q
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
M['FL\?GOI#K=[@W/Q]^7CY.=M_>.LX-_48M?4$L#!!0    ( '6(G5HNTOC
MK@$  ,H:   3    6T-O;G1E;G1?5'EP97-=+GAM;,V9S6[",!"$7P7EBHBQ
MG=(? 9>VUY9#7\!--B0BB2W;4'C[.N%':D6C(BIU+K$2[\Z,O=)WR?1M9\@-
MMG75N%E4>&\>&'-I0;5RL3;4A)U<VUKY\&J7S*ATI9;$Q'@\8:EN/#5^Y%N-
M:#Y]HERM*S]XWH;/KM3-++)4N6CPN"]LO6:1,J8J4^7#/MLTV3>7T<$A#IU=
MC2M*XX:A(&)G'=J=GPT.?:\;LK;,:+!0UK^H.E2Q;<6<WU7DXGZ),QEUGI<I
M93I=UZ$E=L:2REQ!Y.LJWHL.^YU]N&':/_G5_IU,GV&H7%AM7)B8I<OMCB-I
MNT<F")'U9?\13XY!^NKS43OMC+)?>H?K_=!VU<W#L6ZY_HZ_SOBD?V$. 9)#
M@N1(0'+<@.28@.2X!<EQ!Y+C'B0''Z,$02$J1T$J1V$J1X$J1Z$J1\$J1^$J
M1P$K1R&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K0"&K1"&K1"&K1"&K
M1"&K1"&K1"&K1"&K1"&K1"&K1"%K@D+6!(6L"0I9$Q2R)O])UG>M5W_]=Z5=
MXUJ5S=&?=;^PYI]02P$"% ,4    " !UB)U:1L=-2)4   #-    $
M        @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( '6(G5K_
M\(=7\@   "L"   1              "  <,   !D;V-0<F]P<R]C;W)E+GAM
M;%!+ 0(4 Q0    ( '6(G5J97)PC$ 8  )PG   3              "  >0!
M  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ =8B=6K!43G%:!@
M;"4  !@              ("!)0@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM
M;%!+ 0(4 Q0    ( '6(G5I@ALW:]@4  (0<   8              " @;4.
M  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " !UB)U:FF]<
M#70#   \"0  &               @('A%   >&PO=V]R:W-H965T<R]S:&5E
M=#,N>&UL4$L! A0#%     @ =8B=6D8YHVF3 @  $P8  !@
M ("!BQ@  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( '6(
MG5H7 66I^0@  ) G   8              " @50;  !X;"]W;W)K<VAE971S
M+W-H965T-2YX;6Q02P$"% ,4    " !UB)U:]]:L]3\#   ,"0  &
M        @(&#)   >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%
M  @ =8B=6CVD(.W<!@  L3   !@              ("!^"<  'AL+W=O<FMS
M:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    ( '6(G5H5-6],"@@  +TC   8
M              " @0HO  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"
M% ,4    " !UB)U:QIXJ,W "  #/!0  &               @(%*-P  >&PO
M=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ =8B=6F;IMJDF$@
M,3   !D              ("!\#D  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX
M;6Q02P$"% ,4    " !UB)U:Q[*.%^T$  "R"P  &0              @(%-
M3   >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( '6(G5JD
M)1M&I@(  ,8%   9              " @7%1  !X;"]W;W)K<VAE971S+W-H
M965T,3(N>&UL4$L! A0#%     @ =8B=6D$)9K+O!   F H  !D
M     ("!3E0  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4
M" !UB)U:<%.WHG,+  "$(   &0              @(%T60  >&PO=V]R:W-H
M965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( '6(G5K*X"X-7@\  %DK   9
M              " @1YE  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L!
M A0#%     @ =8B=6HWJT:5#!P  >14  !D              ("!LW0  'AL
M+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " !UB)U:OBIWP= "
M  !5!@  &0              @($M?   >&PO=V]R:W-H965T<R]S:&5E=#$W
M+GAM;%!+ 0(4 Q0    ( '6(G5K!</-GTP0  !,+   9              "
M@31_  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ =8B=
M6G74!%U4 @  L 4  !D              ("!/H0  'AL+W=O<FMS:&5E=',O
M<VAE970Q.2YX;6Q02P$"% ,4    " !UB)U:$ZV'ZT0"  "*!@  &0
M        @(')A@  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0
M   ( '6(G5IG9VM^,0T  '\D   9              " @42)  !X;"]W;W)K
M<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ =8B=6GU7&UBX @  ^04
M !D              ("!K)8  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q0
M2P$"% ,4    " !UB)U:.9U/7!,#  "/!@  &0              @(&;F0
M>&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( '6(G5K11S=M
MJ@(  ,T%   9              " @>6<  !X;"]W;W)K<VAE971S+W-H965T
M,C0N>&UL4$L! A0#%     @ =8B=6G&S#$VC @  VP4  !D
M ("!QI\  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    " !U
MB)U:WQ.;4>D"  "^!@  &0              @(&@H@  >&PO=V]R:W-H965T
M<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    ( '6(G5I*-&3ZE@0  %8.   9
M          " @<"E  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#
M%     @ =8B=6E7V>O73 @  808  !D              ("!C:H  'AL+W=O
M<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    " !UB)U:T9*KSJP$  "A
M"@  &0              @(&7K0  >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM
M;%!+ 0(4 Q0    ( '6(G5J3_744T 4  /0A   9              " @7JR
M  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ =8B=6AIS
MC3<  P  %@D  !D              ("!@;@  'AL+W=O<FMS:&5E=',O<VAE
M970S,2YX;6Q02P$"% ,4    " !UB)U:S5H!B P#  #C"0  &0
M    @(&XNP  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    (
M '6(G5IGG -#@ 0  /8:   9              " @?N^  !X;"]W;W)K<VAE
M971S+W-H965T,S,N>&UL4$L! A0#%     @ =8B=6J&9OF^J @  ; <  !D
M             ("!LL,  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"
M% ,4    " !UB)U:?Q;V'0$#   ##0  &0              @(&3Q@  >&PO
M=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( '6(G5I=1-LKDP(
M , &   9              " @<O)  !X;"]W;W)K<VAE971S+W-H965T,S8N
M>&UL4$L! A0#%     @ =8B=6N#&/5S7 @  &PD  !D              ("!
ME<P  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    " !UB)U:
M?DS^?)H(   930  &0              @(&CSP  >&PO=V]R:W-H965T<R]S
M:&5E=#,X+GAM;%!+ 0(4 Q0    ( '6(G5I \^MVA0<  (U-   9
M      " @738  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%
M  @ =8B=6EK6&4 Z!P  XSP  !D              ("!,.   'AL+W=O<FMS
M:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    " !UB)U:![IM%@L%   0*
M&0              @(&AYP  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+
M 0(4 Q0    ( '6(G5KC/97-U (  'L'   9              " @>/L  !X
M;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ =8B=6@30?$LK
M @  K@0  !D              ("![N\  'AL+W=O<FMS:&5E=',O<VAE970T
M,RYX;6Q02P$"% ,4    " !UB)U:79MZ4_$(  #:0   &0
M@(%0\@  >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( '6(
MG5I: YE+/ ,   @4   -              "  7C[  !X;"]S='EL97,N>&UL
M4$L! A0#%     @ =8B=6I>*NQS     $P(   L              ( !W_X
M %]R96QS+RYR96QS4$L! A0#%     @ =8B=6L\C[>C: P  @1T   \
M         ( !R/\  'AL+W=O<FMB;V]K+GAM;%!+ 0(4 Q0    ( '6(G5I'
M'&"YI $  )L:   :              "  <\# 0!X;"]?<F5L<R]W;W)K8F]O
M:RYX;6PN<F5L<U!+ 0(4 Q0    ( '6(G5HNTOC K@$  ,H:   3
M      "  :L% 0!;0V]N=&5N=%]4>7!E<UTN>&UL4$L%!@     T #0 (PX
' (H' 0    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<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>58
<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>60
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>174</ContextCount>
  <ElementCount>214</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>52</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>6</UnitCount>
  <MyReports>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - Statement - Consolidated Statements of Operations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedStatementsofOperations</Role>
      <ShortName>Consolidated Statements of Operations</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - Statement - Consolidated Statements of Comprehensive Income (Loss)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss</Role>
      <ShortName>Consolidated Statements of Comprehensive Income (Loss)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Statement - Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLossParenthetical</Role>
      <ShortName>Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Statement - Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedBalanceSheets</Role>
      <ShortName>Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Statement - Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - Statement - Consolidated Statement of Equity Statement</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement</Role>
      <ShortName>Consolidated Statement of Equity Statement</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>0000008 - Statement - Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows</Role>
      <ShortName>Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>0000009 - Statement - Consolidated Statement of Equity (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/ConsolidatedStatementofEquityParenthetical</Role>
      <ShortName>Consolidated Statement of Equity (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies</Role>
      <ShortName>Organization, Basis of Presentation, and Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - Disclosure - Revenue</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/Revenue</Role>
      <ShortName>Revenue</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Investments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/Investments</Role>
      <ShortName>Investments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Long-Term Debt and Other Borrowings</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/LongTermDebtandOtherBorrowings</Role>
      <ShortName>Long-Term Debt and Other Borrowings</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/CommitmentsandContingencies</Role>
      <ShortName>Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Net Income per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/NetIncomeperShare</Role>
      <ShortName>Net Income per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Industry Segments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/IndustrySegments</Role>
      <ShortName>Industry Segments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.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>19</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.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>20</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>9954471 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Organization, Basis of Presentation, and Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies</ParentRole>
      <Position>21</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>9954472 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesTables</Role>
      <ShortName>Organization, Basis of Presentation, and Significant Accounting Policies (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies</ParentRole>
      <Position>22</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>9954473 - Disclosure - Revenue (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/RevenueTables</Role>
      <ShortName>Revenue (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/Revenue</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>9954474 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/Inventories</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>9954475 - Disclosure - Investments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/InvestmentsTables</Role>
      <ShortName>Investments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/Investments</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>9954476 - Disclosure - Long-Term Debt and Other Borrowings (Table)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsTable</Role>
      <ShortName>Long-Term Debt and Other Borrowings (Table)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/LongTermDebtandOtherBorrowings</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>9954477 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/FairValueMeasurements</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>9954478 - Disclosure - Net Income per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/NetIncomeperShareTables</Role>
      <ShortName>Net Income per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/NetIncomeperShare</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>9954479 - Disclosure - Industry Segments (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/IndustrySegmentsTables</Role>
      <ShortName>Industry Segments (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/IndustrySegments</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>9954480 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails</Role>
      <ShortName>Organization, Basis of Presentation, and Significant Accounting Policies - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>30</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>9954481 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies - Supplemental Cash Flows (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails</Role>
      <ShortName>Organization, Basis of Presentation, and Significant Accounting Policies - Supplemental Cash Flows (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>9954482 - Disclosure - Revenue - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/RevenueAdditionalInformationDetails</Role>
      <ShortName>Revenue - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>32</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>9954483 - Disclosure - Revenue - Disaggregation of Revenue (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails</Role>
      <ShortName>Revenue - Disaggregation of Revenue (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>9954484 - Disclosure - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/InventoriesDetails</Role>
      <ShortName>Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/InventoriesTables</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>9954485 - Disclosure - Investments - Schedule of Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails</Role>
      <ShortName>Investments - Schedule of Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>9954486 - Disclosure - Investments - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails</Role>
      <ShortName>Investments - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>9954487 - Disclosure - Long-Term Debt and Other Borrowings - Schedule of Long Term Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails</Role>
      <ShortName>Long-Term Debt and Other Borrowings - Schedule of Long Term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>37</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>9954488 - Disclosure - Long-Term Debt and Other Borrowings - Additional Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails</Role>
      <ShortName>Long-Term Debt and Other Borrowings - Additional Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>38</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>9954489 - Disclosure - Commitments and Contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/CommitmentsandContingenciesDetails</Role>
      <ShortName>Commitments and Contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/CommitmentsandContingencies</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>9954490 - Disclosure - Fair Value Measurements - Change in Our Investments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails</Role>
      <ShortName>Fair Value Measurements - Change in Our Investments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>40</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>9954491 - Disclosure - Fair Value Measurements - Market Risks and Derivative Hedge Contracts (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails</Role>
      <ShortName>Fair Value Measurements - Market Risks and Derivative Hedge Contracts (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>9954492 - Disclosure - Net Income per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/NetIncomeperShareDetails</Role>
      <ShortName>Net Income per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.tetratec.com/role/NetIncomeperShareTables</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>9954493 - Disclosure - Industry Segments - Additional Details (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/IndustrySegmentsAdditionalDetailsDetails</Role>
      <ShortName>Industry Segments - Additional Details (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="tti-20250331.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>9954494 - Disclosure - Industry Segments - Schedule of Segment Financial Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails</Role>
      <ShortName>Industry Segments - Schedule of Segment Financial Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>44</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="tti-20250331.htm">tti-20250331.htm</File>
    <File>tti-20250331.xsd</File>
    <File>tti-20250331_cal.xml</File>
    <File>tti-20250331_def.xml</File>
    <File>tti-20250331_lab.xml</File>
    <File>tti-20250331_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="548">http://fasb.org/us-gaap/2023</BaseTaxonomy>
    <BaseTaxonomy items="32">http://xbrl.sec.gov/dei/2023</BaseTaxonomy>
    <BaseTaxonomy items="4">http://xbrl.sec.gov/ecd/2023</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>62
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "tti-20250331.htm": {
   "nsprefix": "tti",
   "nsuri": "http://www.tetratec.com/20250331",
   "dts": {
    "inline": {
     "local": [
      "tti-20250331.htm"
     ]
    },
    "schema": {
     "local": [
      "tti-20250331.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/2022-03-31/types.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd",
      "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd",
      "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd",
      "https://xbrl.sec.gov/country/2023/country-2023.xsd",
      "https://xbrl.sec.gov/dei/2023/dei-2023.xsd",
      "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "tti-20250331_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "tti-20250331_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "tti-20250331_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "tti-20250331_pre.xml"
     ]
    }
   },
   "keyStandard": 199,
   "keyCustom": 15,
   "axisStandard": 22,
   "axisCustom": 0,
   "memberStandard": 32,
   "memberCustom": 18,
   "hidden": {
    "total": 5,
    "http://xbrl.sec.gov/dei/2023": 5
   },
   "contextCount": 174,
   "entityCount": 1,
   "segmentCount": 52,
   "elementCount": 450,
   "unitCount": 6,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2023": 548,
    "http://xbrl.sec.gov/dei/2023": 32,
    "http://xbrl.sec.gov/ecd/2023": 4
   },
   "report": {
    "R1": {
     "role": "http://www.tetratec.com/role/CoverPage",
     "longName": "0000001 - Document - Cover Page",
     "shortName": "Cover Page",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
     "longName": "0000002 - Statement - Consolidated Statements of Operations",
     "shortName": "Consolidated Statements of Operations",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:CostsAndExpenses",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss",
     "longName": "0000003 - Statement - Consolidated Statements of Comprehensive Income (Loss)",
     "shortName": "Consolidated Statements of Comprehensive Income (Loss)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R4": {
     "role": "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLossParenthetical",
     "longName": "0000004 - Statement - Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)",
     "shortName": "Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "4",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
       "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
       "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
       "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
       "us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
     "longName": "0000005 - Statement - Consolidated Balance Sheets",
     "shortName": "Consolidated Balance Sheets",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "5",
     "firstAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:AccountsReceivableNetCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical",
     "longName": "0000006 - Statement - Consolidated Balance Sheets (Parenthetical)",
     "shortName": "Consolidated Balance Sheets (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "6",
     "firstAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
     "longName": "0000007 - Statement - Consolidated Statement of Equity Statement",
     "shortName": "Consolidated Statement of Equity Statement",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "7",
     "firstAnchor": {
      "contextRef": "c-38",
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-38",
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R8": {
     "role": "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows",
     "longName": "0000008 - Statement - Consolidated Statements of Cash Flows",
     "shortName": "Consolidated Statements of Cash Flows",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "8",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ProfitLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.tetratec.com/role/ConsolidatedStatementofEquityParenthetical",
     "longName": "0000009 - Statement - Consolidated Statement of Equity (Parenthetical)",
     "shortName": "Consolidated Statement of Equity (Parenthetical)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "parenthetical",
     "menuCat": "Statements",
     "order": "9",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies",
     "longName": "0000010 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies",
     "shortName": "Organization, Basis of Presentation, and Significant Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "10",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.tetratec.com/role/Revenue",
     "longName": "0000011 - Disclosure - Revenue",
     "shortName": "Revenue",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "11",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.tetratec.com/role/Inventories",
     "longName": "0000012 - Disclosure - Inventories",
     "shortName": "Inventories",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "12",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.tetratec.com/role/Investments",
     "longName": "0000013 - Disclosure - Investments",
     "shortName": "Investments",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "13",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InvestmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InvestmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.tetratec.com/role/LongTermDebtandOtherBorrowings",
     "longName": "0000014 - Disclosure - Long-Term Debt and Other Borrowings",
     "shortName": "Long-Term Debt and Other Borrowings",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "14",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.tetratec.com/role/CommitmentsandContingencies",
     "longName": "0000015 - Disclosure - Commitments and Contingencies",
     "shortName": "Commitments and Contingencies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "15",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.tetratec.com/role/FairValueMeasurements",
     "longName": "0000016 - Disclosure - Fair Value Measurements",
     "shortName": "Fair Value Measurements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "16",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.tetratec.com/role/NetIncomeperShare",
     "longName": "0000017 - Disclosure - Net Income per Share",
     "shortName": "Net Income per Share",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "17",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.tetratec.com/role/IndustrySegments",
     "longName": "0000018 - Disclosure - Industry Segments",
     "shortName": "Industry Segments",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "18",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:SegmentReportingDisclosureTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R19": {
     "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": "19",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NetIncomeLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R20": {
     "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": "20",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ecd:NonRule10b51ArrAdoptedFlag",
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "ecd:Rule10b51ArrAdoptedFlag",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ecd:NonRule10b51ArrAdoptedFlag",
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R21": {
     "role": "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies",
     "longName": "9954471 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies (Policies)",
     "shortName": "Organization, Basis of Presentation, and Significant Accounting Policies (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "21",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R22": {
     "role": "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesTables",
     "longName": "9954472 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies (Tables)",
     "shortName": "Organization, Basis of Presentation, and Significant Accounting Policies (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "22",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R23": {
     "role": "http://www.tetratec.com/role/RevenueTables",
     "longName": "9954473 - Disclosure - Revenue (Tables)",
     "shortName": "Revenue (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "23",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:DisaggregationOfRevenueTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R24": {
     "role": "http://www.tetratec.com/role/InventoriesTables",
     "longName": "9954474 - Disclosure - Inventories (Tables)",
     "shortName": "Inventories (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "24",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R25": {
     "role": "http://www.tetratec.com/role/InvestmentsTables",
     "longName": "9954475 - Disclosure - Investments (Tables)",
     "shortName": "Investments (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "25",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InvestmentsInAndAdvancesToAffiliatesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InvestmentsInAndAdvancesToAffiliatesTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R26": {
     "role": "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsTable",
     "longName": "9954476 - Disclosure - Long-Term Debt and Other Borrowings (Table)",
     "shortName": "Long-Term Debt and Other Borrowings (Table)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "26",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R27": {
     "role": "http://www.tetratec.com/role/FairValueMeasurementsTables",
     "longName": "9954477 - Disclosure - Fair Value Measurements (Tables)",
     "shortName": "Fair Value Measurements (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "27",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R28": {
     "role": "http://www.tetratec.com/role/NetIncomeperShareTables",
     "longName": "9954478 - Disclosure - Net Income per Share (Tables)",
     "shortName": "Net Income per Share (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "28",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R29": {
     "role": "http://www.tetratec.com/role/IndustrySegmentsTables",
     "longName": "9954479 - Disclosure - Industry Segments (Tables)",
     "shortName": "Industry Segments (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "29",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R30": {
     "role": "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails",
     "longName": "9954480 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies - Additional Information (Details)",
     "shortName": "Organization, Basis of Presentation, and Significant Accounting Policies - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "30",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NumberOfReportableSegments",
      "unitRef": "segment",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-10",
      "name": "tti:GrossBrineLeaseAcres",
      "unitRef": "acre",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "div",
       "tti:MineralResourcesArrangementsPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R31": {
     "role": "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails",
     "longName": "9954481 - Disclosure - Organization, Basis of Presentation, and Significant Accounting Policies - Supplemental Cash Flows (Details)",
     "shortName": "Organization, Basis of Presentation, and Significant Accounting Policies - Supplemental Cash Flows (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "31",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InterestPaidNet",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:InterestPaidNet",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R32": {
     "role": "http://www.tetratec.com/role/RevenueAdditionalInformationDetails",
     "longName": "9954482 - Disclosure - Revenue - Additional Information (Details)",
     "shortName": "Revenue - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "32",
     "firstAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:ContractWithCustomerAssetNetCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:ContractWithCustomerAssetNetCurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R33": {
     "role": "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails",
     "longName": "9954483 - Disclosure - Revenue - Disaggregation of Revenue (Details)",
     "shortName": "Revenue - Disaggregation of Revenue (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "33",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-68",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R34": {
     "role": "http://www.tetratec.com/role/InventoriesDetails",
     "longName": "9954484 - Disclosure - Inventories (Details)",
     "shortName": "Inventories (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "34",
     "firstAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:InventoryFinishedGoods",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R35": {
     "role": "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails",
     "longName": "9954485 - Disclosure - Investments - Schedule of Investments (Details)",
     "shortName": "Investments - Schedule of Investments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "35",
     "firstAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:EquitySecuritiesFvNi",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:InvestmentsInAndAdvancesToAffiliatesTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": null
    },
    "R36": {
     "role": "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails",
     "longName": "9954486 - Disclosure - Investments - Additional Information (Details)",
     "shortName": "Investments - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "36",
     "firstAnchor": {
      "contextRef": "c-78",
      "name": "us-gaap:ProceedsFromSaleOfEquitySecuritiesFvNi",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-78",
      "name": "us-gaap:ProceedsFromSaleOfEquitySecuritiesFvNi",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R37": {
     "role": "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails",
     "longName": "9954487 - Disclosure - Long-Term Debt and Other Borrowings - Schedule of Long Term Debt (Details)",
     "shortName": "Long-Term Debt and Other Borrowings - Schedule of Long Term Debt (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "37",
     "firstAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:LongTermDebtNoncurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-80",
      "name": "us-gaap:LongTermDebtNoncurrent",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R38": {
     "role": "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
     "longName": "9954488 - Disclosure - Long-Term Debt and Other Borrowings - Additional Information (Details)",
     "shortName": "Long-Term Debt and Other Borrowings - Additional Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "38",
     "firstAnchor": {
      "contextRef": "c-82",
      "name": "us-gaap:DebtInstrumentBasisSpreadOnVariableRate1",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "4",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-82",
      "name": "us-gaap:DebtInstrumentBasisSpreadOnVariableRate1",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "4",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R39": {
     "role": "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
     "longName": "9954489 - Disclosure - Commitments and Contingencies (Details)",
     "shortName": "Commitments and Contingencies (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "39",
     "firstAnchor": {
      "contextRef": "c-52",
      "name": "tti:DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "us-gaap:DiscontinuedOperationsPolicyTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-108",
      "name": "us-gaap:LossContingencyEstimateOfPossibleLoss",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-5",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R40": {
     "role": "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails",
     "longName": "9954490 - Disclosure - Fair Value Measurements - Change in Our Investments (Details)",
     "shortName": "Fair Value Measurements - Change in Our Investments (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "40",
     "firstAnchor": {
      "contextRef": "c-114",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-114",
      "name": "us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R41": {
     "role": "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails",
     "longName": "9954491 - Disclosure - Fair Value Measurements - Market Risks and Derivative Hedge Contracts (Details)",
     "shortName": "Fair Value Measurements - Market Risks and Derivative Hedge Contracts (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "41",
     "firstAnchor": {
      "contextRef": "c-10",
      "name": "us-gaap:EquitySecuritiesFvNi",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:InvestmentsInAndAdvancesToAffiliatesTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-154",
      "name": "us-gaap:EquitySecuritiesFvNi",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R42": {
     "role": "http://www.tetratec.com/role/NetIncomeperShareDetails",
     "longName": "9954492 - Disclosure - Net Income per Share (Details)",
     "shortName": "Net Income per Share (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "42",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    },
    "R43": {
     "role": "http://www.tetratec.com/role/IndustrySegmentsAdditionalDetailsDetails",
     "longName": "9954493 - Disclosure - Industry Segments - Additional Details (Details)",
     "shortName": "Industry Segments - Additional Details (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "43",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "segment",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:NumberOfOperatingSegments",
      "unitRef": "segment",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true,
      "unique": true
     }
    },
    "R44": {
     "role": "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails",
     "longName": "9954494 - Disclosure - Industry Segments - Schedule of Segment Financial Information (Details)",
     "shortName": "Industry Segments - Schedule of Segment Financial Information (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "44",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "us-gaap:ImpairmentOfLongLivedAssetsHeldForUse",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "-3",
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tti-20250331.htm",
      "unique": true
     }
    }
   },
   "tag": {
    "us-gaap_AccountingPoliciesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountingPoliciesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accounting Policies [Abstract]",
        "label": "Accounting Policies [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AccountsPayableCurrentAndNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsPayableCurrentAndNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade accounts payable",
        "label": "Accounts Payable",
        "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."
       }
      }
     },
     "auth_ref": [
      "r85",
      "r845"
     ]
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccountsReceivableNetCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade accounts receivable, net of allowances of $537 in 2025 and $626 in 2024",
        "label": "Accounts Receivable, after Allowance for Credit Loss, Current",
        "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": [
      "r269",
      "r270"
     ]
    },
    "us-gaap_AccruedLiabilitiesCurrentAndNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccruedLiabilitiesCurrentAndNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued liabilities and other",
        "label": "Accrued Liabilities",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities."
       }
      }
     },
     "auth_ref": [
      "r85"
     ]
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Less accumulated depreciation",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services."
       }
      }
     },
     "auth_ref": [
      "r64",
      "r166",
      "r481"
     ]
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accumulated other comprehensive loss",
        "label": "Accumulated Other Comprehensive Income (Loss), 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": [
      "r38",
      "r39",
      "r108",
      "r175",
      "r477",
      "r512",
      "r516"
     ]
    },
    "us-gaap_AccumulatedTranslationAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AccumulatedTranslationAdjustmentMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Currency Translation",
        "label": "Accumulated Foreign Currency Adjustment Attributable to Parent [Member]",
        "documentation": "Accumulated other comprehensive income (loss) resulting from 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 the parent."
       }
      }
     },
     "auth_ref": [
      "r4",
      "r18",
      "r39",
      "r185",
      "r186",
      "r447",
      "r448",
      "r449",
      "r450",
      "r452",
      "r772"
     ]
    },
    "ecd_Additional402vDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "Additional402vDisclosureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional 402(v) Disclosure",
        "label": "Additional 402(v) Disclosure [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r719"
     ]
    },
    "us-gaap_AdditionalPaidInCapital": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapital",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional paid-in capital",
        "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": [
      "r100",
      "r665",
      "r849"
     ]
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdditionalPaidInCapitalMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Additional Paid-In Capital",
        "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": [
      "r405",
      "r406",
      "r407",
      "r526",
      "r780",
      "r781",
      "r782",
      "r833",
      "r852"
     ]
    },
    "ecd_AdjToCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AdjToCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustment to Compensation, Amount",
        "label": "Adjustment to Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r725"
     ]
    },
    "ecd_AdjToCompAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AdjToCompAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustment to Compensation:",
        "label": "Adjustment to Compensation [Axis]"
       }
      }
     },
     "auth_ref": [
      "r725"
     ]
    },
    "ecd_AdjToNonPeoNeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AdjToNonPeoNeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote",
        "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r725"
     ]
    },
    "ecd_AdjToPeoCompFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AdjToPeoCompFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adjustment To PEO Compensation, Footnote",
        "label": "Adjustment To PEO Compensation, Footnote [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r725"
     ]
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity-based compensation",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73",
      "r378"
     ]
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reconciliation of net income to net cash provided by (used in) operating activities:",
        "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate Erroneous Compensation Amount",
        "label": "Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r690",
      "r701",
      "r711",
      "r736"
     ]
    },
    "ecd_AggtErrCompNotYetDeterminedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AggtErrCompNotYetDeterminedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined",
        "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r693",
      "r704",
      "r714",
      "r739"
     ]
    },
    "ecd_AllAdjToCompMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AllAdjToCompMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "All Adjustments to Compensation",
        "label": "All Adjustments to Compensation [Member]"
       }
      }
     },
     "auth_ref": [
      "r725"
     ]
    },
    "ecd_AllExecutiveCategoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AllExecutiveCategoriesMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "All Executive Categories",
        "label": "All Executive Categories [Member]"
       }
      }
     },
     "auth_ref": [
      "r732"
     ]
    },
    "ecd_AllIndividualsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AllIndividualsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "All Individuals",
        "label": "All Individuals [Member]"
       }
      }
     },
     "auth_ref": [
      "r697",
      "r705",
      "r715",
      "r732",
      "r740",
      "r744",
      "r752"
     ]
    },
    "ecd_AllTradingArrangementsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AllTradingArrangementsMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "All Trading Arrangements",
        "label": "All Trading Arrangements [Member]"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trade accounts receivable, allowances for doubtful accounts",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r176",
      "r271",
      "r280"
     ]
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amendment Flag",
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AmortizationOfFinancingCosts",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 12.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amortization and expense of financing costs",
        "label": "Amortization of Debt Issuance Costs",
        "documentation": "Amount of amortization expense attributable to debt issuance costs."
       }
      }
     },
     "auth_ref": [
      "r111",
      "r344",
      "r454",
      "r776"
     ]
    },
    "us-gaap_AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrealized Gain (Loss) on Investment",
        "label": "AOCI, Gain (Loss), Debt Securities, Available-for-Sale, with Allowance for Credit Loss, Parent [Member]",
        "documentation": "Accumulated unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with allowance for credit loss, attributable to parent."
       }
      }
     },
     "auth_ref": [
      "r282"
     ]
    },
    "tti_AssetBasedCreditAgreementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "AssetBasedCreditAgreementMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Asset-Based Credit Agreement",
        "label": "Asset-Based Credit Agreement [Member]",
        "documentation": "Asset-Based Credit Agreement"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetImpairmentCharges": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetImpairmentCharges",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 15.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Impairments and other charges",
        "label": "Asset Impairment Charges",
        "documentation": "Amount of write-down of assets recognized in the income statement. Includes, but is not limited to, losses from tangible assets, intangible assets and goodwill."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r63"
     ]
    },
    "us-gaap_AssetRetirementObligationsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetRetirementObligationsNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Asset retirement obligations",
        "label": "Asset Retirement Obligations, Noncurrent",
        "documentation": "Noncurrent portion of the carrying amount of a liability for an asset retirement obligation. An asset retirement obligation is a legal obligation associated with the disposal or retirement of a tangible long-lived asset that results from the acquisition, construction or development, or the normal operations of a long-lived asset, except for certain obligations of lessees."
       }
      }
     },
     "auth_ref": [
      "r789"
     ]
    },
    "us-gaap_Assets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "Assets",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total assets",
        "terseLabel": "Total assets",
        "label": "Assets",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r137",
      "r169",
      "r201",
      "r239",
      "r254",
      "r260",
      "r275",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r316",
      "r318",
      "r320",
      "r321",
      "r415",
      "r419",
      "r438",
      "r473",
      "r562",
      "r665",
      "r681",
      "r797",
      "r798",
      "r837"
     ]
    },
    "us-gaap_AssetsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "ASSETS",
        "label": "Assets [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total current assets",
        "label": "Assets, Current",
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events."
       }
      }
     },
     "auth_ref": [
      "r162",
      "r178",
      "r201",
      "r275",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r316",
      "r318",
      "r320",
      "r321",
      "r415",
      "r419",
      "r438",
      "r665",
      "r797",
      "r798",
      "r837"
     ]
    },
    "us-gaap_AssetsCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsCurrentAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current assets:",
        "label": "Assets, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_AssetsNoncurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AssetsNoncurrentAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other assets:",
        "label": "Assets, Noncurrent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "tti_AutomobilesAndTrucks": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "AutomobilesAndTrucks",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Automobiles and trucks",
        "label": "Automobiles And Trucks",
        "documentation": "Long lived, depreciable assets used primarily for road transportation, including large vehicles primarily used for transporting cargo and vehicles that are used primarily for transporting people."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_AwardExrcPrice": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardExrcPrice",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Exercise Price",
        "label": "Award Exercise Price"
       }
      }
     },
     "auth_ref": [
      "r747"
     ]
    },
    "ecd_AwardGrantDateFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardGrantDateFairValue",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value as of Grant Date",
        "label": "Award Grant Date Fair Value"
       }
      }
     },
     "auth_ref": [
      "r748"
     ]
    },
    "ecd_AwardTmgDiscLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardTmgDiscLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Award Timing Disclosures [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AwardTmgHowMnpiCnsdrdTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardTmgHowMnpiCnsdrdTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Timing, How MNPI Considered",
        "label": "Award Timing, How MNPI Considered [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AwardTmgMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardTmgMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Timing Method",
        "label": "Award Timing Method [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AwardTmgMnpiCnsdrdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardTmgMnpiCnsdrdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Timing MNPI Considered",
        "label": "Award Timing MNPI Considered [Flag]"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AwardTmgMnpiDiscTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardTmgMnpiDiscTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Timing MNPI Disclosure",
        "label": "Award Timing MNPI Disclosure [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_AwardTmgPredtrmndFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardTmgPredtrmndFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Timing Predetermined",
        "label": "Award Timing Predetermined [Flag]"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "us-gaap_AwardTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "AwardTypeAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Award Type",
        "label": "Award Type [Axis]",
        "documentation": "Information by type of award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404"
     ]
    },
    "ecd_AwardUndrlygSecuritiesAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardUndrlygSecuritiesAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Underlying Securities",
        "label": "Award Underlying Securities Amount"
       }
      }
     },
     "auth_ref": [
      "r746"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardsCloseToMnpiDiscIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Name",
        "label": "Awards Close in Time to MNPI Disclosures, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r745"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardsCloseToMnpiDiscTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Awards Close in Time to MNPI Disclosures",
        "label": "Awards Close in Time to MNPI Disclosures [Table]"
       }
      }
     },
     "auth_ref": [
      "r744"
     ]
    },
    "ecd_AwardsCloseToMnpiDiscTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "AwardsCloseToMnpiDiscTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Awards Close in Time to MNPI Disclosures, Table",
        "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]"
       }
      }
     },
     "auth_ref": [
      "r744"
     ]
    },
    "us-gaap_BaseRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "BaseRateMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Base Rate",
        "label": "Base Rate [Member]",
        "documentation": "Minimum rate investor will accept."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CapitalAdditionsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CapitalAdditionsMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Capital Addition Purchase Commitments",
        "label": "Capital Addition Purchase Commitments [Member]",
        "documentation": "Contractual obligation to increase property, plant and equipment either through construction or future purchases."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CapitalExpendituresIncurredButNotYetPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CapitalExpendituresIncurredButNotYetPaid",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued capital expenditures",
        "label": "Capital Expenditures Incurred but Not yet Paid",
        "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred."
       }
      }
     },
     "auth_ref": [
      "r49",
      "r50",
      "r51"
     ]
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 1.0
      },
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and cash equivalents",
        "verboseLabel": "Cash and cash equivalents at end of period",
        "label": "Cash and Cash Equivalents, at Carrying Value",
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r46",
      "r164",
      "r637"
     ]
    },
    "us-gaap_CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted Cash",
        "label": "Cash and Cash Equivalents, Restricted Cash and Cash Equivalents, Policy [Policy Text Block]",
        "documentation": "Entity's cash and cash equivalents accounting policy with respect to restricted balances. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or company statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r136"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Cash, cash equivalents and restricted cash at beginning of period",
        "periodEndLabel": "Cash, cash equivalents and restricted cash at end of period",
        "totalLabel": "Total cash, cash equivalents and restricted cash at end of period shown in the consolidated statements of cash flows",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents",
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r46",
      "r119",
      "r198"
     ]
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reconciliation of cash, cash equivalents and restricted cash to the consolidated balance sheets",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Increase (decrease) in cash and cash equivalents",
        "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect",
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r119"
     ]
    },
    "ecd_ChangedPeerGroupFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ChangedPeerGroupFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changed Peer Group, Footnote",
        "label": "Changed Peer Group, Footnote [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r723"
     ]
    },
    "tti_ChemicalPlants": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "ChemicalPlants",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Chemical plants",
        "label": "Chemical Plants",
        "documentation": "Long-lived depreciable assets used for the processing, transmission, or distribution of materials that is not electricity, steam, fossil fuel, nuclear, natural gas, or water, and other long-term capitalized assets related to property, plant and equipment not otherwise previously categorized."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CityAreaCode",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "City Area Code",
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ClassOfStockDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ClassOfStockDomain",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Class of Stock [Domain]",
        "label": "Class of Stock [Domain]",
        "documentation": "Share of stock differentiated by the voting rights the holder receives. Examples include, but are not limited to, common stock, redeemable preferred stock, nonredeemable preferred stock, and convertible stock."
       }
      }
     },
     "auth_ref": [
      "r156",
      "r172",
      "r173",
      "r174",
      "r201",
      "r222",
      "r223",
      "r225",
      "r227",
      "r233",
      "r234",
      "r275",
      "r309",
      "r312",
      "r313",
      "r314",
      "r320",
      "r321",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r438",
      "r519",
      "r520",
      "r521",
      "r522",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r550",
      "r572",
      "r590",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r758",
      "r777",
      "r783"
     ]
    },
    "ecd_CoSelectedMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "CoSelectedMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Company Selected Measure Amount",
        "label": "Company Selected Measure Amount"
       }
      }
     },
     "auth_ref": [
      "r724"
     ]
    },
    "ecd_CoSelectedMeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "CoSelectedMeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Company Selected Measure Name",
        "label": "Company Selected Measure Name"
       }
      }
     },
     "auth_ref": [
      "r724"
     ]
    },
    "us-gaap_CommitmentsAndContingencies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingencies",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and contingencies (Note 6)",
        "label": "Commitments and Contingencies",
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r34",
      "r86",
      "r475",
      "r549"
     ]
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and Contingencies Disclosure [Abstract]",
        "label": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingencies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitments and Contingencies",
        "label": "Commitments and Contingencies Disclosure [Text Block]",
        "documentation": "The entire disclosure for commitments and contingencies."
       }
      }
     },
     "auth_ref": [
      "r129",
      "r297",
      "r299",
      "r623",
      "r791"
     ]
    },
    "us-gaap_CommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common Stock",
        "verboseLabel": "Common Stock Par Value",
        "label": "Common Stock [Member]",
        "documentation": "Stock that is subordinate to all other stock of the issuer."
       }
      }
     },
     "auth_ref": [
      "r668",
      "r669",
      "r670",
      "r672",
      "r673",
      "r674",
      "r675",
      "r780",
      "r781",
      "r833",
      "r848",
      "r852"
     ]
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockParOrStatedValuePerShare",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, par value (in dollars per share)",
        "label": "Common Stock, Par or Stated Value Per Share",
        "documentation": "Face amount or stated value per share of common stock."
       }
      }
     },
     "auth_ref": [
      "r99"
     ]
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesAuthorized",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, shares authorized (in shares)",
        "label": "Common Stock, Shares Authorized",
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r550"
     ]
    },
    "us-gaap_CommonStockSharesIssued": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockSharesIssued",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Common stock, shares issued (in shares)",
        "label": "Common Stock, 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": [
      "r99"
     ]
    },
    "us-gaap_CommonStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CommonStockValue",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common stock, par value 0.01 per share; 250,000,000 shares authorized at March\u00a031, 2025 and December\u00a031, 2024; 136,207,612 shares issued at March\u00a031, 2025 and 134,951,081 shares issued at December\u00a031, 2024",
        "label": "Common Stock, Value, Issued",
        "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": [
      "r99",
      "r476",
      "r665"
     ]
    },
    "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation Actually Paid vs. Company Selected Measure",
        "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r729"
     ]
    },
    "ecd_CompActuallyPaidVsNetIncomeTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "CompActuallyPaidVsNetIncomeTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation Actually Paid vs. Net Income",
        "label": "Compensation Actually Paid vs. Net Income [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r728"
     ]
    },
    "ecd_CompActuallyPaidVsOtherMeasureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "CompActuallyPaidVsOtherMeasureTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation Actually Paid vs. Other Measure",
        "label": "Compensation Actually Paid vs. Other Measure [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r730"
     ]
    },
    "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return",
        "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r727"
     ]
    },
    "tti_CompletionFluidsProductsDivisionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "CompletionFluidsProductsDivisionMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails",
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Completion Fluids &amp; Products",
        "terseLabel": "Completion Fluids &amp; Products Division",
        "label": "Completion Fluids &amp; Products Division [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ComprehensiveIncomeNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Comprehensive income (loss) attributable to TETRA stockholders",
        "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent",
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners."
       }
      }
     },
     "auth_ref": [
      "r40",
      "r181",
      "r183",
      "r188",
      "r469",
      "r486"
     ]
    },
    "srt_ConsolidationItemsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ConsolidationItemsAxis",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consolidation Items [Axis]",
        "label": "Consolidation Items [Axis]"
       }
      }
     },
     "auth_ref": [
      "r202",
      "r241",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r258",
      "r262",
      "r309",
      "r310",
      "r311",
      "r312",
      "r314",
      "r315",
      "r317",
      "r319",
      "r320",
      "r797",
      "r798"
     ]
    },
    "srt_ConsolidationItemsDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ConsolidationItemsDomain",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Consolidation Items [Domain]",
        "label": "Consolidation Items [Domain]"
       }
      }
     },
     "auth_ref": [
      "r202",
      "r241",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r258",
      "r262",
      "r309",
      "r310",
      "r311",
      "r312",
      "r314",
      "r315",
      "r317",
      "r319",
      "r320",
      "r797",
      "r798"
     ]
    },
    "us-gaap_ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Presentation",
        "label": "Consolidation, Subsidiaries or Other Investments, Consolidated Entities, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for subsidiaries or other investments that are consolidated, including the accounting treatment for intercompany accounts or transactions and any noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r149"
     ]
    },
    "us-gaap_ConstructionInProgressGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConstructionInProgressGross",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Construction in progress",
        "label": "Construction in Progress, Gross",
        "documentation": "Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service."
       }
      }
     },
     "auth_ref": [
      "r125"
     ]
    },
    "us-gaap_ContractWithCustomerAssetNetCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerAssetNetCurrent",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/RevenueAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contract assets",
        "label": "Contract with Customer, Asset, after Allowance for Credit Loss, 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 current."
       }
      }
     },
     "auth_ref": [
      "r355",
      "r357",
      "r368"
     ]
    },
    "us-gaap_ContractWithCustomerLiability": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ContractWithCustomerLiability",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/RevenueAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unearned income balances",
        "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": [
      "r355",
      "r356",
      "r368"
     ]
    },
    "tti_ContractWithCustomerLiabilityRevenueRecognizedNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "ContractWithCustomerLiabilityRevenueRecognizedNet",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/RevenueAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred revenue recognized",
        "label": "Contract With Customer, Liability, Revenue Recognized, Net",
        "documentation": "Contract With Customer, Liability, Revenue Recognized, Net"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ConvertibleDebtSecuritiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ConvertibleDebtSecuritiesMember",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Convertible Note",
        "label": "Convertible Debt Securities [Member]",
        "documentation": "Debt securities that can be exchanged for equity of the debt issuer at the option of the issuer or the holder."
       }
      }
     },
     "auth_ref": [
      "r803"
     ]
    },
    "us-gaap_CorporateNonSegmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CorporateNonSegmentMember",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Corporate",
        "label": "Corporate, Non-Segment [Member]",
        "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment."
       }
      }
     },
     "auth_ref": [
      "r22",
      "r253",
      "r254",
      "r255",
      "r256",
      "r262",
      "r786"
     ]
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostOfGoodsAndServicesSold",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of product sales and services",
        "label": "Cost of Goods and Services 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": [
      "r114",
      "r468"
     ]
    },
    "us-gaap_CostOfRevenueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostOfRevenueAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cost of revenues:",
        "label": "Cost of Revenue [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CostsAndExpenses": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CostsAndExpenses",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total cost of revenues",
        "label": "Costs and Expenses",
        "documentation": "Total costs of sales and operating expenses for the period."
       }
      }
     },
     "auth_ref": [
      "r112"
     ]
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cover [Abstract]",
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_CreditFacilityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CreditFacilityAxis",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility [Axis]",
        "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": []
    },
    "us-gaap_CreditFacilityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "CreditFacilityDomain",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Credit Facility [Domain]",
        "label": "Credit Facility [Domain]",
        "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current Fiscal Year End Date",
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt Disclosure [Abstract]",
        "label": "Debt Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtDisclosureTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowings"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-Term Debt and Other Borrowings",
        "label": "Debt Disclosure [Text Block]",
        "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": [
      "r130",
      "r200",
      "r322",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r338",
      "r345",
      "r346",
      "r348"
     ]
    },
    "us-gaap_DebtInstrumentAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentAxis",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt Instrument [Axis]",
        "label": "Debt Instrument [Axis]",
        "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities."
       }
      }
     },
     "auth_ref": [
      "r24",
      "r96",
      "r97",
      "r138",
      "r139",
      "r202",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r329",
      "r334",
      "r335",
      "r336",
      "r337",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r455",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r778"
     ]
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basis spread on variable rate",
        "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": []
    },
    "tti_DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity interest in certain foreign subsidiaries",
        "label": "Debt Instrument, Collateral, Percentage Of Equity Interest In Certain Foreign Subsidiaries",
        "documentation": "Debt Instrument, Collateral, Percentage Of Equity Interest In Certain Foreign Subsidiaries"
       }
      }
     },
     "auth_ref": []
    },
    "tti_DebtInstrumentCovenantLeverageRatioMaximum": {
     "xbrltype": "pureItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "DebtInstrumentCovenantLeverageRatioMaximum",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum leverage ratio",
        "label": "Debt Instrument, Covenant, Leverage Ratio, Maximum",
        "documentation": "Debt Instrument, Covenant, Leverage Ratio, Maximum"
       }
      }
     },
     "auth_ref": []
    },
    "tti_DebtInstrumentCovenantLiquidityMinimumAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "DebtInstrumentCovenantLiquidityMinimumAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum liquidity amount",
        "label": "Debt Instrument, Covenant, Liquidity, Minimum Amount",
        "documentation": "Debt Instrument, Covenant, Liquidity, Minimum Amount"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest rate",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement."
       }
      }
     },
     "auth_ref": [
      "r31",
      "r324"
     ]
    },
    "us-gaap_DebtInstrumentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentLineItems",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt Instrument [Line Items]",
        "label": "Debt Instrument [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": [
      "r202",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r329",
      "r334",
      "r335",
      "r336",
      "r337",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r347",
      "r455",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r778"
     ]
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentNameDomain",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Debt Instrument, Name [Domain]",
        "label": "Debt Instrument, Name [Domain]",
        "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": [
      "r32",
      "r202",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r329",
      "r334",
      "r335",
      "r336",
      "r337",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r455",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r778"
     ]
    },
    "us-gaap_DebtInstrumentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentTable",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Long-term Debt Instruments [Table]",
        "label": "Schedule of Long-Term Debt Instruments [Table]",
        "documentation": "A table or schedule providing information pertaining to long-term 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 company, if longer."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r68",
      "r69",
      "r80",
      "r81",
      "r84",
      "r87",
      "r131",
      "r132",
      "r202",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r329",
      "r334",
      "r335",
      "r336",
      "r337",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r347",
      "r455",
      "r644",
      "r645",
      "r646",
      "r647",
      "r648",
      "r778"
     ]
    },
    "us-gaap_DebtInstrumentTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentTerm",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Term",
        "label": "Debt Instrument, Term",
        "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DebtInstrumentUnamortizedDiscountPremiumNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DebtInstrumentUnamortizedDiscountPremiumNet",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unamortized discount",
        "label": "Debt Instrument, Unamortized Discount (Premium), Net",
        "documentation": "Amount, after accumulated amortization, of debt discount (premium)."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r81",
      "r82",
      "r83",
      "r84",
      "r800"
     ]
    },
    "us-gaap_DeferredIncomeCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation and employee benefits",
        "label": "Deferred Income, Current",
        "documentation": "Amount of deferred income excluding obligation to transfer product and service to customer for which consideration has been received or is receivable, classified as current."
       }
      }
     },
     "auth_ref": [
      "r759"
     ]
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxAssetsNet",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "tti_TotalOtherAssets",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred tax assets, net",
        "label": "Deferred Income Tax Assets, Net",
        "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": [
      "r408",
      "r409"
     ]
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "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": [
      "r408",
      "r409",
      "r474"
     ]
    },
    "tti_DelayedDrawTermLoanDDTLMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "DelayedDrawTermLoanDDTLMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Delayed-Draw Term Loan",
        "label": "Delayed Draw Term Loan (DDTL) [Member]",
        "documentation": "Delayed Draw Term Loan (DDTL)"
       }
      }
     },
     "auth_ref": []
    },
    "tti_DepreciationDepletionAmortizationAndAccretion": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "DepreciationDepletionAmortizationAndAccretion",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_CostsAndExpenses",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation, amortization and accretion",
        "label": "Depreciation, Depletion, Amortization And Accretion",
        "documentation": "The aggregate net amount of depreciation, depletion, amortization, and accretion recognized during an accounting period. As a noncash item, the net amount is added back to net income when calculating cash provided by (used in) operations using the indirect method."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DepreciationDepletionAndAmortization",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 13.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Depreciation, amortization and accretion",
        "label": "Depreciation, Depletion and Amortization",
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r244"
     ]
    },
    "us-gaap_DisaggregationOfRevenueLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueLineItems",
     "presentation": [
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disaggregation of Revenue [Line Items]",
        "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": [
      "r367",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueTable",
     "presentation": [
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disaggregation of Revenue [Table]",
        "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": [
      "r367",
      "r650",
      "r651",
      "r652",
      "r653",
      "r654",
      "r655",
      "r656"
     ]
    },
    "us-gaap_DisaggregationOfRevenueTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisaggregationOfRevenueTableTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/RevenueTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Disaggregation of Revenue",
        "label": "Disaggregation of Revenue [Table Text Block]",
        "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": [
      "r802"
     ]
    },
    "tti_DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate amount of performance bonds",
        "label": "Discontinued Operation, Amounts Of Material Contingent Liabilities Remaining, Performance Bonds",
        "documentation": "Discontinued Operation, Amounts Of Material Contingent Liabilities Remaining, Performance Bonds"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DiscontinuedOperationsDisposedOfBySaleMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DiscontinuedOperationsDisposedOfBySaleMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Discontinued Operations, Disposed of by Sale",
        "label": "Discontinued Operations, Disposed of by Sale [Member]",
        "documentation": "Component or group of components disposed of by sale and representing a strategic shift that has or will have a major effect on operations and financial results."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "us-gaap_DiscontinuedOperationsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DiscontinuedOperationsPolicyTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Discontinued Operations",
        "label": "Discontinued Operations, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for discontinued operations. Includes, but is not limited to, method of interest allocation to a discontinued operation."
       }
      }
     },
     "auth_ref": [
      "r16",
      "r25"
     ]
    },
    "us-gaap_DisposalGroupClassificationAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupClassificationAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Classification [Axis]",
        "label": "Disposal Group Classification [Axis]",
        "documentation": "Information by disposal group classification."
       }
      }
     },
     "auth_ref": [
      "r160"
     ]
    },
    "us-gaap_DisposalGroupClassificationDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupClassificationDomain",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Classification [Domain]",
        "label": "Disposal Group Classification [Domain]",
        "documentation": "Component or group of components disposed of, including but not limited to, disposal group held-for-sale or disposed of by sale, disposed of by means other than sale, and discontinued operations."
       }
      }
     },
     "auth_ref": []
    },
    "tti_DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Decommissioning expense accrued",
        "terseLabel": "Accrued liability related to obligation",
        "label": "Disposal Group, Including Discontinued Operation, Decommissioning Liability Expense",
        "documentation": "Disposal Group, Including Discontinued Operation, Decommissioning Liability Expense"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DisposalGroupsIncludingDiscontinuedOperationsNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DisposalGroupsIncludingDiscontinuedOperationsNameDomain",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Name [Domain]",
        "label": "Disposal Group Name [Domain]",
        "documentation": "Name of disposal group."
       }
      }
     },
     "auth_ref": [
      "r660",
      "r661"
     ]
    },
    "us-gaap_DividendsPayableLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DividendsPayableLineItems",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividends Payable [Line Items]",
        "label": "Dividends Payable [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DividendsPayableTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "DividendsPayableTable",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Dividends Payable [Table]",
        "label": "Dividends Payable [Table]",
        "documentation": "A table that contains information regarding dividends that have been declared but not paid as of the financial reporting date. This information may contain the amount, amount per share, declared date, and date to be paid."
       }
      }
     },
     "auth_ref": [
      "r49"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Period Focus",
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Fiscal Year Focus",
        "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_DocumentInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentInformationLineItems",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Information [Line Items]",
        "label": "Document Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentInformationTable",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Information [Table]",
        "label": "Document Information [Table]",
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Period End Date",
        "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_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Quarterly Report",
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r685"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Transition Report",
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r718"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "DocumentType",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Type",
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Earnings Per Share [Abstract]",
        "label": "Earnings Per Share [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareBasic": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasic",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Net income attributable to TETRA stockholders (in dollars per share)",
        "terseLabel": "Increase to net income per share attributable to TETRA stockholders, basic (in dollars per share)",
        "label": "Earnings Per Share, Basic",
        "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": [
      "r189",
      "r208",
      "r209",
      "r211",
      "r212",
      "r214",
      "r220",
      "r222",
      "r225",
      "r226",
      "r227",
      "r231",
      "r429",
      "r430",
      "r470",
      "r487",
      "r640"
     ]
    },
    "us-gaap_EarningsPerShareBasicAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareBasicAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basic net income per common share:",
        "label": "Earnings Per Share, Basic [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareDiluted": {
     "xbrltype": "perShareItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareDiluted",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net income attributable to TETRA stockholders (in dollars per share)",
        "verboseLabel": "Increase to net income per share attributable to TETRA stockholders, diluted (in dollars per share)",
        "label": "Earnings Per Share, Diluted",
        "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": [
      "r189",
      "r208",
      "r209",
      "r211",
      "r212",
      "r214",
      "r222",
      "r225",
      "r226",
      "r227",
      "r231",
      "r429",
      "r430",
      "r470",
      "r487",
      "r640"
     ]
    },
    "us-gaap_EarningsPerShareDilutedAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareDilutedAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Diluted net income per common share:",
        "label": "Earnings Per Share, Diluted [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EarningsPerShareTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/NetIncomeperShare"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net Income Per Share",
        "label": "Earnings Per Share [Text Block]",
        "documentation": "The entire disclosure for earnings per share."
       }
      }
     },
     "auth_ref": [
      "r219",
      "r228",
      "r229",
      "r230"
     ]
    },
    "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Effect of exchange rate changes on cash",
        "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations",
        "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r443"
     ]
    },
    "us-gaap_EmployeeStockOptionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EmployeeStockOptionMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employee Stock Option",
        "label": "Share-Based Payment Arrangement, Option [Member]",
        "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, Address Line One",
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, City or Town",
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, Postal Zip Code",
        "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/2023",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Address, State or Province",
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Central Index Key",
        "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": [
      "r683"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Common Stock Shares Outstanding",
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Current Reporting Status",
        "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_EntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityDomain",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity [Domain]",
        "label": "Entity [Domain]",
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Emerging Growth Company",
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r683"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity File Number",
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Filer Category",
        "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": [
      "r683"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Incorporation, State or Country Code",
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Interactive Data Current",
        "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": [
      "r757"
     ]
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Registrant Name",
        "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": [
      "r683"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Shell Company",
        "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": [
      "r683"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Small Business",
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r683"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Tax Identification Number",
        "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": [
      "r683"
     ]
    },
    "us-gaap_EquityComponentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquityComponentDomain",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Component [Domain]",
        "label": "Equity Component [Domain]",
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r157",
      "r184",
      "r185",
      "r186",
      "r203",
      "r204",
      "r205",
      "r207",
      "r215",
      "r217",
      "r232",
      "r276",
      "r279",
      "r354",
      "r405",
      "r406",
      "r407",
      "r411",
      "r412",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r428",
      "r446",
      "r447",
      "r448",
      "r449",
      "r450",
      "r452",
      "r462",
      "r507",
      "r508",
      "r509",
      "r526",
      "r590"
     ]
    },
    "srt_EquityMethodInvesteeNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "EquityMethodInvesteeNameDomain",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails",
      "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment, Name [Domain]",
        "label": "Investment, Name [Domain]"
       }
      }
     },
     "auth_ref": [
      "r272",
      "r273",
      "r274"
     ]
    },
    "us-gaap_EquitySecuritiesFvNi": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquitySecuritiesFvNi",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "tti_TotalOtherAssets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Investments",
        "terseLabel": "Total investments",
        "label": "Equity Securities, FV-NI, Current",
        "documentation": "Amount of investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI), classified as current."
       }
      }
     },
     "auth_ref": [
      "r170",
      "r437",
      "r639"
     ]
    },
    "us-gaap_EquitySecuritiesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "EquitySecuritiesMember",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Securities",
        "label": "Equity Securities [Member]",
        "documentation": "Ownership interest or right to acquire or dispose of ownership interest in corporations and other legal entities for which ownership interest is represented by shares of common or preferred stock, convertible securities, stock rights, or stock warrants."
       }
      }
     },
     "auth_ref": [
      "r59",
      "r676",
      "r677",
      "r678",
      "r854"
     ]
    },
    "ecd_EquityValuationAssumptionDifferenceFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "EquityValuationAssumptionDifferenceFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Valuation Assumption Difference, Footnote",
        "label": "Equity Valuation Assumption Difference, Footnote [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r726"
     ]
    },
    "ecd_ErrCompAnalysisTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ErrCompAnalysisTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Erroneous Compensation Analysis",
        "label": "Erroneous Compensation Analysis [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r690",
      "r701",
      "r711",
      "r736"
     ]
    },
    "ecd_ErrCompRecoveryTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ErrCompRecoveryTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Erroneously Awarded Compensation Recovery",
        "label": "Erroneously Awarded Compensation Recovery [Table]"
       }
      }
     },
     "auth_ref": [
      "r687",
      "r698",
      "r708",
      "r733"
     ]
    },
    "ecd_ExecutiveCategoryAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ExecutiveCategoryAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Executive Category:",
        "label": "Executive Category [Axis]"
       }
      }
     },
     "auth_ref": [
      "r732"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]",
        "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r432",
      "r433",
      "r436"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value, Recurring and Nonrecurring [Table]",
        "label": "Fair Value, Recurring and Nonrecurring [Table]",
        "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis."
       }
      }
     },
     "auth_ref": [
      "r432",
      "r433",
      "r436"
     ]
    },
    "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Recurring Fair Value Measurements",
        "label": "Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]",
        "documentation": "Tabular disclosure of financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances."
       }
      }
     },
     "auth_ref": [
      "r21",
      "r77",
      "r79",
      "r135"
     ]
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrealized gain (loss)",
        "label": "Fair Value, Asset, Recurring Basis, Still Held, Unrealized Gain (Loss)",
        "documentation": "Amount of unrealized gain (loss) recognized in income from asset measured at fair value on recurring basis using unobservable input (level 3) and still held."
       }
      }
     },
     "auth_ref": [
      "r435"
     ]
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationByAssetClassDomain",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Asset Class [Domain]",
        "label": "Asset Class [Domain]",
        "documentation": "Class of asset."
       }
      }
     },
     "auth_ref": [
      "r20"
     ]
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationCalculationRollForward",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]",
        "label": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation, Calculation [Roll Forward]",
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationLineItems",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]",
        "label": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTable",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Table]",
        "label": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Table]",
        "documentation": "Schedule of information required and determined to be provided for purposes of reconciling beginning and ending balances of fair value measurements of assets using significant unobservable inputs (level 3). Such reconciliation, separately presenting changes during the period, at a minimum, may include, but is not limited to: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets) and gains or losses recognized in other comprehensive income, and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of level 3 (for example, transfers due to changes in the observability of significant inputs), by class of asset."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r79"
     ]
    },
    "us-gaap_FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of changes in Investments",
        "label": "Fair Value, Assets Measured on Recurring Basis, Unobservable Input Reconciliation [Table Text Block]",
        "documentation": "Tabular disclosure of the fair value measurement of assets using significant unobservable inputs (Level 3), a reconciliation of the beginning and ending balances, separately presenting changes during the period attributable to the following: (1) total gains or losses for the period (realized and unrealized), segregating those gains or losses included in earnings (or changes in net assets) and gains or losses recognized in other comprehensive income (loss), and a description of where those gains or losses included in earnings (or changes in net assets) are reported in the statement of income (or activities); (2) purchases, sales, issues, and settlements (each type disclosed separately); and (3) transfers in and transfers out of Level 3 (for example, transfers due to changes in the observability of significant inputs), by class of asset."
       }
      }
     },
     "auth_ref": [
      "r20",
      "r79"
     ]
    },
    "us-gaap_FairValueByAssetClassAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueByAssetClassAxis",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Asset Class [Axis]",
        "label": "Asset Class [Axis]",
        "documentation": "Information by class of asset."
       }
      }
     },
     "auth_ref": [
      "r77",
      "r79"
     ]
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails",
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Hierarchy and NAV [Axis]",
        "label": "Fair Value Hierarchy and NAV [Axis]",
        "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient."
       }
      }
     },
     "auth_ref": [
      "r336",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r433",
      "r463",
      "r464",
      "r465",
      "r645",
      "r646",
      "r657",
      "r658",
      "r659"
     ]
    },
    "us-gaap_FairValueDisclosuresAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueDisclosuresAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Disclosures [Abstract]",
        "label": "Fair Value Disclosures [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueDisclosuresTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Measurements",
        "label": "Fair Value Disclosures [Text Block]",
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information."
       }
      }
     },
     "auth_ref": [
      "r431"
     ]
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueInputsLevel1Member",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails",
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "(Level 1)",
        "label": "Fair Value, Inputs, Level 1 [Member]",
        "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date."
       }
      }
     },
     "auth_ref": [
      "r336",
      "r371",
      "r376",
      "r433",
      "r463",
      "r657",
      "r658",
      "r659"
     ]
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueInputsLevel2Member",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails",
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "(Level 2)",
        "label": "Fair Value, Inputs, Level 2 [Member]",
        "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets."
       }
      }
     },
     "auth_ref": [
      "r336",
      "r371",
      "r376",
      "r433",
      "r464",
      "r645",
      "r646",
      "r657",
      "r658",
      "r659"
     ]
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueInputsLevel3Member",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails",
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "(Level 3)",
        "label": "Fair Value, Inputs, Level 3 [Member]",
        "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing."
       }
      }
     },
     "auth_ref": [
      "r336",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r433",
      "r465",
      "r645",
      "r646",
      "r657",
      "r658",
      "r659"
     ]
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Sale of investments",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Sales",
        "documentation": "Amount of sale of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing."
       }
      }
     },
     "auth_ref": [
      "r78"
     ]
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Reclassification between Level 2 and Level 3 fair value",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset, Transfers out of Level 3",
        "documentation": "Amount of transfers of financial instrument classified as an asset out of level 3 of the fair value hierarchy."
       }
      }
     },
     "auth_ref": [
      "r434"
     ]
    },
    "us-gaap_FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "periodStartLabel": "Beginning balance",
        "periodEndLabel": "Ending balance",
        "label": "Fair Value, Measurement with Unobservable Inputs Reconciliation, Recurring Basis, Asset Value",
        "documentation": "Fair value of financial instrument classified as an asset measured using unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing."
       }
      }
     },
     "auth_ref": [
      "r20"
     ]
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails",
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Hierarchy and NAV [Domain]",
        "label": "Fair Value Hierarchy and NAV [Domain]",
        "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value."
       }
      }
     },
     "auth_ref": [
      "r336",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r463",
      "r464",
      "r465",
      "r645",
      "r646",
      "r657",
      "r658",
      "r659"
     ]
    },
    "us-gaap_FairValueOfFinancialInstrumentsPolicy": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FairValueOfFinancialInstrumentsPolicy",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Measurements",
        "label": "Fair Value of Financial Instruments, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for determining the fair value of financial instruments."
       }
      }
     },
     "auth_ref": [
      "r15",
      "r23"
     ]
    },
    "tti_FedFundsEffectiveRateMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "FedFundsEffectiveRateMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fed Funds Effective Rate",
        "label": "Fed Funds Effective Rate [Member]",
        "documentation": "Fed Funds Effective Rate"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FinanceLeasePrincipalPayments",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Payments on financing lease obligations",
        "label": "Finance Lease, Principal Payments",
        "documentation": "Amount of cash outflow for principal payment on finance lease."
       }
      }
     },
     "auth_ref": [
      "r459",
      "r460"
     ]
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Patents, trademarks, and other intangible assets, accumulated amortization",
        "label": "Finite-Lived Intangible Assets, Accumulated Amortization",
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life."
       }
      }
     },
     "auth_ref": [
      "r167",
      "r293"
     ]
    },
    "tti_FinlandCreditAgreementMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "FinlandCreditAgreementMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finland Credit Agreement",
        "label": "Finland Credit Agreement [Member]",
        "documentation": "Finland Credit Agreement"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ForeignCurrencyTransactionGainLossRealized": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ForeignCurrencyTransactionGainLossRealized",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign currency exchange gains (losses)",
        "label": "Realized Gain (Loss), Foreign Currency Transaction, before Tax",
        "documentation": "Amount, before tax, of realized gain (loss) from foreign currency transaction."
       }
      }
     },
     "auth_ref": [
      "r570",
      "r679",
      "r835",
      "r836",
      "r851"
     ]
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign Currency Translation",
        "label": "Foreign Currency Transactions and Translations Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy."
       }
      }
     },
     "auth_ref": [
      "r439"
     ]
    },
    "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount",
        "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount"
       }
      }
     },
     "auth_ref": [
      "r694",
      "r705",
      "r715",
      "r740"
     ]
    },
    "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount",
        "label": "Forgone Recovery due to Expense of Enforcement, Amount"
       }
      }
     },
     "auth_ref": [
      "r694",
      "r705",
      "r715",
      "r740"
     ]
    },
    "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount",
        "label": "Forgone Recovery due to Violation of Home Country Law, Amount"
       }
      }
     },
     "auth_ref": [
      "r694",
      "r705",
      "r715",
      "r740"
     ]
    },
    "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Forgone Recovery, Explanation of Impracticability",
        "label": "Forgone Recovery, Explanation of Impracticability [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r694",
      "r705",
      "r715",
      "r740"
     ]
    },
    "ecd_ForgoneRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "ForgoneRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Name",
        "label": "Forgone Recovery, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r694",
      "r705",
      "r715",
      "r740"
     ]
    },
    "us-gaap_GainLossOnSaleOfInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainLossOnSaleOfInvestments",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net gain on sale of investment",
        "label": "Gain (Loss) on Sale of Investments",
        "documentation": "The net realized gain (loss) on investments sold during the period, not including gains (losses) on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, which, for cash flow reporting, is a component of proceeds from investing activities."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Gain on investments",
        "label": "Gain (Loss) on Sale of Previously Unissued Stock by Subsidiary or Equity Investee, Nonoperating Income",
        "documentation": "The profit or loss on sales of previously unissued stock by subsidiaries or equity investees made to investors outside the consolidated group that is not reported as operating income. Represents the difference in the parent company's carrying amount of the equity interest in the subsidiary or equity investee immediately before and after the transaction."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Gain on sale of assets",
        "label": "Gain (Loss) on Disposition of Property Plant Equipment",
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "us-gaap_GainsLossesOnExtinguishmentOfDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GainsLossesOnExtinguishmentOfDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 10.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Loss on debt extinguishment",
        "label": "Gain (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": [
      "r13",
      "r66",
      "r67"
     ]
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GeneralAndAdministrativeExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "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": [
      "r115",
      "r574"
     ]
    },
    "tti_GrossBrineLeaseAcres": {
     "xbrltype": "areaItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "GrossBrineLeaseAcres",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Gross brine lease acres",
        "label": "Gross Brine Lease Acres",
        "documentation": "Gross Brine Lease Acres"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_GrossProfit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "GrossProfit",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "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": [
      "r113",
      "r201",
      "r239",
      "r253",
      "r259",
      "r262",
      "r275",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r316",
      "r318",
      "r320",
      "r321",
      "r438",
      "r641",
      "r797"
     ]
    },
    "us-gaap_ImpairmentOfLongLivedAssetsHeldForUse": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ImpairmentOfLongLivedAssetsHeldForUse",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Impairments and other charges",
        "label": "Impairment, Long-Lived Asset, Held-for-Use",
        "documentation": "The aggregate amount of write-downs for impairments recognized during the period for long lived assets held for use (including those held for disposal by means other than sale)."
       }
      }
     },
     "auth_ref": [
      "r13",
      "r63",
      "r126"
     ]
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income (loss) 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": [
      "r0",
      "r109",
      "r142",
      "r239",
      "r253",
      "r259",
      "r262",
      "r471",
      "r483",
      "r641"
     ]
    },
    "us-gaap_IncomeStatementAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Statement [Abstract]",
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Disposal Group Name [Axis]",
        "label": "Disposal Group Name [Axis]",
        "documentation": "Information by name of disposal group."
       }
      }
     },
     "auth_ref": [
      "r660",
      "r661"
     ]
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxExpenseBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Provision for income taxes",
        "negatedLabel": "Increase to income tax benefit",
        "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": [
      "r148",
      "r154",
      "r216",
      "r217",
      "r247",
      "r410",
      "r413",
      "r488"
     ]
    },
    "us-gaap_IncomeTaxesPaid": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncomeTaxesPaid",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income taxes paid",
        "label": "Income Taxes Paid",
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income."
       }
      }
     },
     "auth_ref": [
      "r45",
      "r48"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "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": [
      "r12"
     ]
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "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": [
      "r12"
     ]
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInInventories",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 9.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "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": [
      "r12"
     ]
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Changes in operating assets and liabilities:",
        "label": "Increase (Decrease) in Operating Capital [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInOtherOperatingCapitalNet",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Other",
        "label": "Increase (Decrease) in Other Operating Assets and Liabilities, Net",
        "documentation": "Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 14.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Prepaid expenses and other current assets",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "ecd_IndividualAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "IndividualAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure",
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure",
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Individual:",
        "label": "Individual [Axis]"
       }
      }
     },
     "auth_ref": [
      "r697",
      "r705",
      "r715",
      "r732",
      "r740",
      "r744",
      "r752"
     ]
    },
    "tti_InitialBondsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "InitialBondsMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Initial Bonds",
        "label": "Initial Bonds [Member]",
        "documentation": "Initial Bonds"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_InsiderTradingArrLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "InsiderTradingArrLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Arrangements [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "ecd_InsiderTradingPoliciesProcLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "InsiderTradingPoliciesProcLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Insider Trading Policies and Procedures [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r686",
      "r756"
     ]
    },
    "ecd_InsiderTrdPoliciesProcAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "InsiderTrdPoliciesProcAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Insider Trading Policies and Procedures Adopted",
        "label": "Insider Trading Policies and Procedures Adopted [Flag]"
       }
      }
     },
     "auth_ref": [
      "r686",
      "r756"
     ]
    },
    "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Insider Trading Policies and Procedures Not Adopted",
        "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r686",
      "r756"
     ]
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "tti_TotalOtherAssets",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Patents, trademarks and other intangible assets, net of accumulated amortization of $56,745 in 2025 and $55,421 in 2024",
        "label": "Intangible Assets, Net (Excluding Goodwill)",
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges."
       }
      }
     },
     "auth_ref": [
      "r61",
      "r62"
     ]
    },
    "us-gaap_InterestExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestExpense",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest expense, net",
        "label": "Interest Expense",
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense."
       }
      }
     },
     "auth_ref": [
      "r82",
      "r145",
      "r187",
      "r243",
      "r453",
      "r575",
      "r679",
      "r850"
     ]
    },
    "us-gaap_InterestIncomeExpenseNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestIncomeExpenseNet",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Interest (income) expense, net",
        "label": "Interest Income (Expense), Net",
        "documentation": "The net amount of operating interest income (expense)."
       }
      }
     },
     "auth_ref": [
      "r144"
     ]
    },
    "us-gaap_InterestPaidNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InterestPaidNet",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesSupplementalCashFlowsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest paid",
        "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities",
        "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": [
      "r192",
      "r196",
      "r197"
     ]
    },
    "tti_InterimReplacementBondsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "InterimReplacementBondsMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interim Replacement Bonds",
        "label": "Interim Replacement Bonds [Member]",
        "documentation": "Interim Replacement Bonds"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoriesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoriesMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Supply Agreements",
        "label": "Inventories [Member]",
        "documentation": "Tangible personal property held for sale in the ordinary course of business, or in process of, or to be consumed in, production for sale."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryDisclosureAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventory Disclosure [Abstract]",
        "label": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryDisclosureTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/Inventories"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories",
        "label": "Inventory Disclosure [Text Block]",
        "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": [
      "r283"
     ]
    },
    "us-gaap_InventoryFinishedGoods": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryFinishedGoods",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/InventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Finished goods",
        "label": "Inventory, Finished Goods, Gross",
        "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": [
      "r767"
     ]
    },
    "us-gaap_InventoryNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryNet",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.tetratec.com/role/InventoriesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
      "http://www.tetratec.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Inventories",
        "totalLabel": "Total inventories",
        "label": "Inventory, 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": [
      "r177",
      "r638",
      "r665"
     ]
    },
    "us-gaap_InventoryRawMaterials": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryRawMaterials",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/InventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Raw materials",
        "label": "Inventory, Raw Materials, Gross",
        "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": [
      "r769"
     ]
    },
    "us-gaap_InventoryWorkInProcess": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InventoryWorkInProcess",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/InventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Work in progress",
        "label": "Inventory, Work in Process, Gross",
        "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": [
      "r768"
     ]
    },
    "us-gaap_InvestmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/Investments"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investments",
        "label": "Investment [Text Block]",
        "documentation": "The entire disclosure for investment."
       }
      }
     },
     "auth_ref": [
      "r762",
      "r763",
      "r787"
     ]
    },
    "us-gaap_InvestmentsInAndAdvancesToAffiliatesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsInAndAdvancesToAffiliatesAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Investments in and Advances to Affiliates [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentsInAndAdvancesToAffiliatesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsInAndAdvancesToAffiliatesLineItems",
     "presentation": [
      "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investments in and Advances to Affiliates [Line Items]",
        "label": "Investments in and Advances to Affiliates [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_InvestmentsInAndAdvancesToAffiliatesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsInAndAdvancesToAffiliatesTable",
     "presentation": [
      "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investments in and Advances to Affiliates [Table]",
        "label": "Investments in and Advances to Affiliates [Table]",
        "documentation": "Disclosure of information about investment in and advance to affiliate."
       }
      }
     },
     "auth_ref": [
      "r600",
      "r602",
      "r603",
      "r604",
      "r605",
      "r606",
      "r607",
      "r608",
      "r609",
      "r610",
      "r611",
      "r612",
      "r613",
      "r614"
     ]
    },
    "us-gaap_InvestmentsInAndAdvancesToAffiliatesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsInAndAdvancesToAffiliatesTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/InvestmentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Investments",
        "label": "Investments in and Advances to Affiliates [Table Text Block]",
        "documentation": "Tabular disclosure of investments in and advances to affiliates. Does not include the tabular disclosure of the disaggregation of investments in and advances to affiliates across legal entities."
       }
      }
     },
     "auth_ref": [
      "r858"
     ]
    },
    "us-gaap_InvestmentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "InvestmentsMember",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investments",
        "label": "Investments [Member]",
        "documentation": "Assets held for their financial return, rather than for the entity's operations."
       }
      }
     },
     "auth_ref": []
    },
    "tti_InvestmentsOtherMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "InvestmentsOtherMember",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other investments",
        "label": "Investments, Other [Member]",
        "documentation": "Investments, Other"
       }
      }
     },
     "auth_ref": []
    },
    "tti_KodiakGasServicesInc.Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "KodiakGasServicesInc.Member",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails",
      "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Kodiak",
        "label": "Kodiak Gas Services, Inc. [Member]",
        "documentation": "Kodiak Gas Services, Inc."
       }
      }
     },
     "auth_ref": []
    },
    "tti_LandAndBuilding": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "LandAndBuilding",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Land and building",
        "label": "Land And Building",
        "documentation": "Carrying amount as of the balance sheet date of real estate held for productive use. This excludes land held for sale. And carrying amount as of the balance sheet date of long-lived, depreciable assets that include building structures held for productive use including any addition, improvement, or renovation to the structure, such as interior masonry, interior flooring, electrical, and plumbing."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LegalEntityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LegalEntityAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Legal Entity [Axis]",
        "label": "Legal Entity [Axis]",
        "documentation": "The set of legal entities associated with a report."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LetterOfCreditMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LetterOfCreditMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Letter of Credit",
        "label": "Letter of Credit [Member]",
        "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LettersOfCreditOutstandingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LettersOfCreditOutstandingAmount",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Letters of credit outstanding",
        "label": "Letters of Credit Outstanding, Amount",
        "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total liabilities and 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": [
      "r104",
      "r141",
      "r480",
      "r665",
      "r779",
      "r788",
      "r834"
     ]
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "LIABILITIES AND EQUITY",
        "label": "Liabilities and Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "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": [
      "r30",
      "r163",
      "r201",
      "r275",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r316",
      "r318",
      "r320",
      "r321",
      "r416",
      "r419",
      "r420",
      "r438",
      "r665",
      "r797",
      "r837",
      "r838"
     ]
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesCurrentAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current liabilities:",
        "label": "Liabilities, Current [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "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": [
      "r24",
      "r93",
      "r94",
      "r95",
      "r98",
      "r201",
      "r275",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r316",
      "r318",
      "r320",
      "r321",
      "r416",
      "r419",
      "r420",
      "r438",
      "r797",
      "r837",
      "r838"
     ]
    },
    "us-gaap_LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 6.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Current liabilities associated with discontinued operations",
        "label": "Disposal Group, Including Discontinued Operation, Liabilities, Current",
        "documentation": "Amount classified as liabilities attributable to disposal group held for sale or disposed of, expected to be disposed of within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r88",
      "r92",
      "r124",
      "r127",
      "r160",
      "r161"
     ]
    },
    "us-gaap_LineOfCredit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCredit",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Outstanding debt",
        "label": "Long-Term Line 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": [
      "r24",
      "r139",
      "r846"
     ]
    },
    "tti_LineOfCreditFacilityAdditionalBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "LineOfCreditFacilityAdditionalBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accordion feature",
        "label": "Line of Credit Facility, Additional Borrowing Capacity",
        "documentation": "Line of Credit Facility, Additional Borrowing Capacity"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum borrowing capacity",
        "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": [
      "r28"
     ]
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Availability under agreement",
        "label": "Line of Credit Facility, Remaining Borrowing Capacity",
        "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding)."
       }
      }
     },
     "auth_ref": [
      "r28"
     ]
    },
    "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Commitment fee rate",
        "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage",
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Local Phone Number",
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongTermDebtNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Long-term debt, net",
        "terseLabel": "Total long-term debt",
        "label": "Long-Term Debt, Excluding Current Maturities",
        "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation."
       }
      }
     },
     "auth_ref": [
      "r171"
     ]
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongtermDebtTypeAxis",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term Debt, Type [Axis]",
        "label": "Long-Term Debt, Type [Axis]",
        "documentation": "Information by type of long-term debt."
       }
      }
     },
     "auth_ref": [
      "r32"
     ]
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LongtermDebtTypeDomain",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Long-term Debt, Type [Domain]",
        "label": "Long-Term Debt, Type [Domain]",
        "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer."
       }
      }
     },
     "auth_ref": [
      "r32",
      "r65"
     ]
    },
    "us-gaap_LossContingenciesByNatureOfContingencyAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingenciesByNatureOfContingencyAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingency Nature [Axis]",
        "label": "Loss Contingency Nature [Axis]",
        "documentation": "Information by type of existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur."
       }
      }
     },
     "auth_ref": [
      "r302",
      "r303",
      "r304",
      "r308",
      "r792",
      "r793"
     ]
    },
    "us-gaap_LossContingenciesLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingenciesLineItems",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingencies [Line Items]",
        "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": [
      "r302",
      "r303",
      "r304",
      "r308",
      "r792",
      "r793"
     ]
    },
    "us-gaap_LossContingenciesTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingenciesTable",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingencies [Table]",
        "label": "Loss Contingencies [Table]",
        "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations."
       }
      }
     },
     "auth_ref": [
      "r302",
      "r303",
      "r304",
      "r308",
      "r792",
      "r793"
     ]
    },
    "us-gaap_LossContingencyEstimateOfPossibleLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingencyEstimateOfPossibleLoss",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Estimated amount of potential loss liability",
        "label": "Loss Contingency, Estimate of Possible Loss",
        "documentation": "Reflects the estimated amount of loss from the specified contingency as of the balance sheet date."
       }
      }
     },
     "auth_ref": [
      "r303",
      "r304",
      "r307",
      "r308"
     ]
    },
    "us-gaap_LossContingencyNatureDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingencyNatureDomain",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Loss Contingency, Nature [Domain]",
        "label": "Loss Contingency, Nature [Domain]",
        "documentation": "An existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur. Resolution of the uncertainty may confirm the incurrence of a loss or impairment of an asset or the incurrence of a liability."
       }
      }
     },
     "auth_ref": [
      "r302",
      "r303",
      "r304",
      "r308",
      "r792",
      "r793"
     ]
    },
    "us-gaap_LossContingencyReceivableProceeds": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "LossContingencyReceivableProceeds",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Bond proceeds",
        "label": "Loss Contingency, Receivable, Proceeds",
        "documentation": "Amount of cash inflow from the collection of receivables related to a loss contingency."
       }
      }
     },
     "auth_ref": [
      "r775",
      "r796"
     ]
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MachineryAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Machinery and equipment",
        "label": "Machinery and Equipment, Gross",
        "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment."
       }
      }
     },
     "auth_ref": [
      "r125"
     ]
    },
    "tti_MaritechMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "MaritechMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maritech",
        "label": "Maritech [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum",
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r303",
      "r304",
      "r305",
      "r306",
      "r377",
      "r467",
      "r506",
      "r541",
      "r542",
      "r593",
      "r595",
      "r597",
      "r598",
      "r601",
      "r633",
      "r634",
      "r642",
      "r649",
      "r662",
      "r667",
      "r799",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844"
     ]
    },
    "ecd_MeasureAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "MeasureAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Measure:",
        "label": "Measure [Axis]"
       }
      }
     },
     "auth_ref": [
      "r724"
     ]
    },
    "ecd_MeasureName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "MeasureName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Name",
        "label": "Measure Name"
       }
      }
     },
     "auth_ref": [
      "r724"
     ]
    },
    "tti_MineralResourcesArrangementsPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "MineralResourcesArrangementsPolicyTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Mineral Resources Arrangement",
        "label": "Mineral Resources Arrangements [Policy Text Block]",
        "documentation": "Mineral Resources Arrangements"
       }
      }
     },
     "auth_ref": []
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum",
        "label": "Minimum [Member]"
       }
      }
     },
     "auth_ref": [
      "r303",
      "r304",
      "r305",
      "r306",
      "r377",
      "r467",
      "r506",
      "r541",
      "r542",
      "r593",
      "r595",
      "r597",
      "r598",
      "r601",
      "r633",
      "r634",
      "r642",
      "r649",
      "r662",
      "r667",
      "r799",
      "r839",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844"
     ]
    },
    "us-gaap_MinorityInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "MinorityInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Noncontrolling interests",
        "label": "Equity, Attributable to Noncontrolling Interest",
        "documentation": "Amount of equity (deficit) attributable to noncontrolling interest. Excludes temporary equity."
       }
      }
     },
     "auth_ref": [
      "r37",
      "r140",
      "r201",
      "r275",
      "r309",
      "r312",
      "r313",
      "r314",
      "r320",
      "r321",
      "r438",
      "r479",
      "r552"
     ]
    },
    "ecd_MnpiDiscTimedForCompValFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "MnpiDiscTimedForCompValFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "MNPI Disclosure Timed for Compensation Value",
        "label": "MNPI Disclosure Timed for Compensation Value [Flag]"
       }
      }
     },
     "auth_ref": [
      "r743"
     ]
    },
    "ecd_MtrlTermsOfTrdArrTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "MtrlTermsOfTrdArrTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Material Terms of Trading Arrangement",
        "label": "Material Terms of Trading Arrangement [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "ecd_NamedExecutiveOfficersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NamedExecutiveOfficersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Named Executive Officers, Footnote",
        "label": "Named Executive Officers, Footnote [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r725"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by (used in) financing activities",
        "label": "Net Cash Provided by (Used in) Financing Activities",
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit."
       }
      }
     },
     "auth_ref": [
      "r195"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Financing activities:",
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by (used in) investing activities",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets."
       }
      }
     },
     "auth_ref": [
      "r195"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investing activities:",
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net cash provided by (used in) operating activities",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r120",
      "r121"
     ]
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating activities:",
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_NetIncomeLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NetIncomeLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net income attributable to TETRA stockholders",
        "terseLabel": "Net income (loss), retained deficit",
        "label": "Net Income (Loss) 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": [
      "r110",
      "r121",
      "r143",
      "r161",
      "r180",
      "r182",
      "r186",
      "r201",
      "r206",
      "r208",
      "r209",
      "r211",
      "r212",
      "r216",
      "r217",
      "r224",
      "r239",
      "r253",
      "r259",
      "r262",
      "r275",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r316",
      "r318",
      "r320",
      "r321",
      "r430",
      "r438",
      "r485",
      "r571",
      "r588",
      "r589",
      "r641",
      "r679",
      "r797"
     ]
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "New Accounting Pronouncements",
        "label": "New Accounting Pronouncements, Policy [Policy Text Block]",
        "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": []
    },
    "dei_NoTradingSymbolFlag": {
     "xbrltype": "trueItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "NoTradingSymbolFlag",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "No Trading Symbol Flag",
        "label": "No Trading Symbol Flag",
        "documentation": "Boolean flag that is true only for a security having no trading symbol."
       }
      }
     },
     "auth_ref": []
    },
    "tti_NonCashCumulativeTranslationAdjustmentGainLossNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "NonCashCumulativeTranslationAdjustmentGainLossNetOfTax",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 16.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-cash cumulative foreign currency translation adjustment loss from dissolution of Canadian subsidiary",
        "label": "Non-Cash Cumulative Translation Adjustment Gain (Loss), Net of Tax",
        "documentation": "Non-Cash Cumulative Translation Adjustment Gain (Loss), Net of Tax"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_NonGaapMeasureDescriptionTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonGaapMeasureDescriptionTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-GAAP Measure Description",
        "label": "Non-GAAP Measure Description [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r724"
     ]
    },
    "ecd_NonNeosMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonNeosMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-NEOs",
        "label": "Non-NEOs [Member]"
       }
      }
     },
     "auth_ref": [
      "r694",
      "r705",
      "r715",
      "r732",
      "r740"
     ]
    },
    "ecd_NonPeoNeoAvgCompActuallyPaidAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonPeoNeoAvgCompActuallyPaidAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount",
        "label": "Non-PEO NEO Average Compensation Actually Paid Amount"
       }
      }
     },
     "auth_ref": [
      "r722"
     ]
    },
    "ecd_NonPeoNeoAvgTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonPeoNeoAvgTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-PEO NEO Average Total Compensation Amount",
        "label": "Non-PEO NEO Average Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r721"
     ]
    },
    "ecd_NonPeoNeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonPeoNeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-PEO NEO",
        "label": "Non-PEO NEO [Member]"
       }
      }
     },
     "auth_ref": [
      "r732"
     ]
    },
    "ecd_NonRule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonRule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted",
        "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]"
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "ecd_NonRule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "NonRule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated",
        "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]"
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "us-gaap_NonUsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NonUsMember",
     "presentation": [
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "International",
        "label": "Non-US [Member]",
        "documentation": "Countries excluding the United States of America (US)."
       }
      }
     },
     "auth_ref": [
      "r853",
      "r855",
      "r856",
      "r857"
     ]
    },
    "us-gaap_NoncontrollingInterestMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NoncontrollingInterestMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Noncontrolling Interest",
        "label": "Noncontrolling Interest [Member]",
        "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r354",
      "r780",
      "r781",
      "r782",
      "r852"
     ]
    },
    "us-gaap_NumberOfOperatingSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NumberOfOperatingSegments",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsAdditionalDetailsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of segment operations",
        "label": "Number of Operating Segments",
        "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues."
       }
      }
     },
     "auth_ref": [
      "r785"
     ]
    },
    "us-gaap_NumberOfReportableSegments": {
     "xbrltype": "integerItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "NumberOfReportableSegments",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails",
      "http://www.tetratec.com/role/RevenueAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of reporting segments",
        "verboseLabel": "Number of reportable segments",
        "label": "Number of Reportable Segments",
        "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": [
      "r785"
     ]
    },
    "tti_OffshoreDivisionMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "OffshoreDivisionMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Offshore Division",
        "label": "Offshore Division [Member]",
        "documentation": "Offshore Division [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Operating lease liabilities, current portion",
        "label": "Operating Lease, Liability, Current",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current."
       }
      }
     },
     "auth_ref": [
      "r458"
     ]
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease liabilities",
        "label": "Operating Lease, Liability, Noncurrent",
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent."
       }
      }
     },
     "auth_ref": [
      "r458"
     ]
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingLeaseRightOfUseAsset",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "tti_TotalOtherAssets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating lease right-of-use assets",
        "label": "Operating Lease, Right-of-Use Asset",
        "documentation": "Amount of lessee's right to use underlying asset under operating lease."
       }
      }
     },
     "auth_ref": [
      "r457"
     ]
    },
    "us-gaap_OperatingSegmentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OperatingSegmentsMember",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Operating Segments",
        "label": "Operating Segments [Member]",
        "documentation": "Identifies 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": [
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r262"
     ]
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherAssetsNoncurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "tti_TotalOtherAssets",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other assets",
        "label": "Other Assets, Noncurrent",
        "documentation": "Amount of noncurrent assets classified as other."
       }
      }
     },
     "auth_ref": [
      "r168"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Unrealized gain on investment",
        "terseLabel": "Other comprehensive income",
        "label": "Other Comprehensive Income (Loss), Available-for-Sale Securities Adjustment, Net of Tax, Portion Attributable to Parent",
        "documentation": "Amount, after tax and reclassification adjustment, of gain (loss) in value of unsold investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), attributable to parent."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r17",
      "r134"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLossParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Taxes related to foreign currency translation adjustment from continuing operations",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Noncontrolling Interest",
        "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 noncontrolling interests."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r17",
      "r134"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Foreign currency translation adjustment from continuing operations, net of taxes of $0 in 2025 and 2024",
        "verboseLabel": "Translation adjustment, net of taxes",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Gain (Loss) Arising During Period, Net of Tax",
        "documentation": "Amount after tax, before 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": [
      "r5",
      "r108",
      "r440",
      "r441",
      "r445"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Tax related to translation adjustment",
        "label": "OCI, Foreign Currency Transaction and Translation Gain (Loss), Arising During Period, Tax",
        "documentation": "Amount of tax expense (benefit), before 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": [
      "r3",
      "r6",
      "r440",
      "r442",
      "r451"
     ]
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss",
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Reclassification of non-cash cumulative foreign currency translation adjustment loss to net income from dissolution of Canadian subsidiary",
        "negatedLabel": "Cumulative foreign currency translation adjustment loss",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Reclassification Adjustment from AOCI, Realized upon Sale or Liquidation, Net of Tax",
        "documentation": "Amount after tax of reclassification adjustment from accumulated other comprehensive income for translation gain (loss) realized upon the sale or liquidation of an investment in a foreign entity and foreign currency hedges that are designated and qualified as hedging instruments for hedges of the foreign currency exposure of a net investment in a foreign operation."
       }
      }
     },
     "auth_ref": [
      "r7",
      "r8",
      "r108",
      "r179",
      "r444"
     ]
    },
    "us-gaap_OtherDeferredCostsNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherDeferredCostsNet",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deferred financing costs",
        "label": "Other Deferred Costs, Net",
        "documentation": "Net amount of other deferred costs capitalized at the end of the reporting period. Does not include deferred finance costs or deferred acquisition costs of insurance companies."
       }
      }
     },
     "auth_ref": [
      "r764"
     ]
    },
    "us-gaap_OtherInventorySupplies": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherInventorySupplies",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/InventoriesDetails": {
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/InventoriesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Parts and supplies",
        "label": "Other Inventory, Supplies, Gross",
        "documentation": "Amount before valuation and LIFO reserves of other supplies used within the manufacturing or production process expected to be consumed within one year or operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r770"
     ]
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherLiabilitiesNoncurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other liabilities",
        "label": "Other Liabilities, Noncurrent",
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r33"
     ]
    },
    "us-gaap_OtherNoncashIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherNoncashIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Other non-cash credits",
        "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": [
      "r121"
     ]
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "OtherNonoperatingIncomeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Other (income) expense, net",
        "label": "Other Nonoperating Income (Expense)",
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other."
       }
      }
     },
     "auth_ref": [
      "r116"
     ]
    },
    "ecd_OtherPerfMeasureAmt": {
     "xbrltype": "decimalItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "OtherPerfMeasureAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other Performance Measure, Amount",
        "label": "Other Performance Measure, Amount"
       }
      }
     },
     "auth_ref": [
      "r724"
     ]
    },
    "ecd_OutstandingAggtErrCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "OutstandingAggtErrCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount",
        "label": "Outstanding Aggregate Erroneous Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r692",
      "r703",
      "r713",
      "r738"
     ]
    },
    "ecd_OutstandingRecoveryCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "OutstandingRecoveryCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation Amount",
        "label": "Outstanding Recovery Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r695",
      "r706",
      "r716",
      "r741"
     ]
    },
    "ecd_OutstandingRecoveryIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "OutstandingRecoveryIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Name",
        "label": "Outstanding Recovery, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r695",
      "r706",
      "r716",
      "r741"
     ]
    },
    "ecd_PayVsPerformanceDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PayVsPerformanceDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Pay vs Performance Disclosure [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r720"
     ]
    },
    "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsForProceedsFromOtherInvestingActivities",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Other investing activities",
        "label": "Payments for (Proceeds from) Other Investing Activities",
        "documentation": "Amount of cash (inflow) outflow from investing activities classified as other."
       }
      }
     },
     "auth_ref": [
      "r760",
      "r774"
     ]
    },
    "us-gaap_PaymentsOfDebtIssuanceCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsOfDebtIssuanceCosts",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Debt issuance costs",
        "label": "Payments of Debt Issuance Costs",
        "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": [
      "r44"
     ]
    },
    "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Shares withheld for taxes on equity-based compensation",
        "label": "Payment, Tax Withholding, Share-Based Payment Arrangement",
        "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r191"
     ]
    },
    "us-gaap_PaymentsToAcquireProductiveAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquireProductiveAssets",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Capital expenditures",
        "label": "Payments to Acquire Productive Assets",
        "documentation": "The cash outflow for purchases of and capital improvements on property, plant and equipment (capital expenditures), software, and other intangible assets."
       }
      }
     },
     "auth_ref": [
      "r147",
      "r830",
      "r831",
      "r832"
     ]
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Purchases of property, plant and equipment, net",
        "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": [
      "r118"
     ]
    },
    "ecd_PeerGroupIssuersFnTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeerGroupIssuersFnTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Peer Group Issuers, Footnote",
        "label": "Peer Group Issuers, Footnote [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r723"
     ]
    },
    "ecd_PeerGroupTotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeerGroupTotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Peer Group Total Shareholder Return Amount",
        "label": "Peer Group Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r723"
     ]
    },
    "ecd_PeoActuallyPaidCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeoActuallyPaidCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "PEO Actually Paid Compensation Amount",
        "label": "PEO Actually Paid Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r722"
     ]
    },
    "ecd_PeoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeoMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "PEO",
        "label": "PEO [Member]"
       }
      }
     },
     "auth_ref": [
      "r732"
     ]
    },
    "ecd_PeoName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeoName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "PEO Name",
        "label": "PEO Name"
       }
      }
     },
     "auth_ref": [
      "r725"
     ]
    },
    "ecd_PeoTotalCompAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PeoTotalCompAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "PEO Total Compensation Amount",
        "label": "PEO Total Compensation Amount"
       }
      }
     },
     "auth_ref": [
      "r721"
     ]
    },
    "us-gaap_PlanNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PlanNameAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Plan Name [Axis]",
        "label": "Plan Name [Axis]",
        "documentation": "Information by plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "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"
     ]
    },
    "us-gaap_PlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PlanNameDomain",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Plan Name [Domain]",
        "label": "Plan Name [Domain]",
        "documentation": "Plan name for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "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"
     ]
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Prepaid expenses and other current assets",
        "label": "Prepaid Expense and Other Assets, Current",
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r771"
     ]
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from credit agreements and long-term debt",
        "label": "Proceeds from Issuance of Long-Term Debt",
        "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r42",
      "r519"
     ]
    },
    "us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleMaturityAndCollectionsOfInvestments",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of investments",
        "label": "Proceeds from Sale, Maturity and Collection of Investments",
        "documentation": "The cash inflow associated with the sale, maturity and collection of all investments such as debt, security and so forth during the period."
       }
      }
     },
     "auth_ref": [
      "r41"
     ]
    },
    "us-gaap_ProceedsFromSaleOfEquitySecuritiesFvNi": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleOfEquitySecuritiesFvNi",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of investment",
        "label": "Proceeds from Sale of Equity Securities, FV-NI",
        "documentation": "Amount of cash inflow from sale of investment in equity security measured at fair value with change in fair value recognized in net income (FV-NI), classified as investing activity."
       }
      }
     },
     "auth_ref": [
      "r146",
      "r193"
     ]
    },
    "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Proceeds from sale of property, plant and equipment",
        "label": "Proceeds from Sale of Property, Plant, 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": [
      "r117"
     ]
    },
    "us-gaap_ProductMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProductMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product sales",
        "label": "Product [Member]",
        "documentation": "Article or substance produced by nature, labor or machinery."
       }
      }
     },
     "auth_ref": [
      "r650"
     ]
    },
    "srt_ProductOrServiceAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductOrServiceAxis",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product and Service [Axis]",
        "label": "Product and Service [Axis]"
       }
      }
     },
     "auth_ref": [
      "r264",
      "r468",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r635",
      "r650",
      "r666",
      "r761",
      "r794",
      "r795",
      "r802",
      "r847"
     ]
    },
    "srt_ProductsAndServicesDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ProductsAndServicesDomain",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Product and Service [Domain]",
        "label": "Product and Service [Domain]"
       }
      }
     },
     "auth_ref": [
      "r264",
      "r468",
      "r500",
      "r501",
      "r502",
      "r503",
      "r504",
      "r505",
      "r635",
      "r650",
      "r666",
      "r761",
      "r794",
      "r795",
      "r802",
      "r847"
     ]
    },
    "us-gaap_ProfitLoss": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProfitLoss",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss": {
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0,
       "order": 3.0
      },
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 11.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.tetratec.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "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": [
      "r161",
      "r180",
      "r182",
      "r194",
      "r201",
      "r206",
      "r216",
      "r217",
      "r239",
      "r253",
      "r259",
      "r262",
      "r275",
      "r309",
      "r310",
      "r312",
      "r313",
      "r314",
      "r316",
      "r318",
      "r320",
      "r321",
      "r414",
      "r417",
      "r418",
      "r430",
      "r438",
      "r471",
      "r484",
      "r525",
      "r571",
      "r588",
      "r589",
      "r641",
      "r663",
      "r664",
      "r680",
      "r773",
      "r797"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentGross",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total property, plant and equipment",
        "label": "Property, Plant and Equipment, Gross",
        "documentation": "Amount before accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r125",
      "r165",
      "r482"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentNet",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net property, plant and equipment",
        "label": "Property, Plant and Equipment, Net",
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures."
       }
      }
     },
     "auth_ref": [
      "r14",
      "r472",
      "r482",
      "r665"
     ]
    },
    "us-gaap_PropertyPlantAndEquipmentNetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "PropertyPlantAndEquipmentNetAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Property, plant and equipment:",
        "label": "Property, Plant and Equipment, Net [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ProvisionForDoubtfulAccounts",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 7.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Recovery of credit losses",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable."
       }
      }
     },
     "auth_ref": [
      "r190",
      "r281"
     ]
    },
    "ecd_PvpTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PvpTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Pay vs Performance Disclosure",
        "label": "Pay vs Performance Disclosure [Table]"
       }
      }
     },
     "auth_ref": [
      "r720"
     ]
    },
    "ecd_PvpTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "PvpTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Pay vs Performance Disclosure, Table",
        "label": "Pay vs Performance [Table Text Block]"
       }
      }
     },
     "auth_ref": [
      "r720"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statistical Measurement [Axis]",
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r303",
      "r304",
      "r305",
      "r306",
      "r370",
      "r377",
      "r401",
      "r402",
      "r403",
      "r466",
      "r467",
      "r506",
      "r541",
      "r542",
      "r593",
      "r595",
      "r597",
      "r598",
      "r601",
      "r633",
      "r634",
      "r642",
      "r649",
      "r662",
      "r667",
      "r670",
      "r790",
      "r799",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RangeMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statistical Measurement [Domain]",
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "auth_ref": [
      "r303",
      "r304",
      "r305",
      "r306",
      "r370",
      "r377",
      "r401",
      "r402",
      "r403",
      "r466",
      "r467",
      "r506",
      "r541",
      "r542",
      "r593",
      "r595",
      "r597",
      "r598",
      "r601",
      "r633",
      "r634",
      "r642",
      "r649",
      "r662",
      "r667",
      "r670",
      "r790",
      "r799",
      "r840",
      "r841",
      "r842",
      "r843",
      "r844"
     ]
    },
    "us-gaap_RecapitalizationCosts": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RecapitalizationCosts",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Capitalized development costs",
        "label": "Recapitalization Costs",
        "documentation": "Amount of recapitalization costs for professional fees associated with restructuring debt and equity mixture that do not qualify for capitalization."
       }
      }
     },
     "auth_ref": [
      "r128"
     ]
    },
    "ecd_RecoveryOfErrCompDisclosureLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "RecoveryOfErrCompDisclosureLineItems",
     "lang": {
      "en-us": {
       "role": {
        "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]"
       }
      }
     },
     "auth_ref": [
      "r687",
      "r698",
      "r708",
      "r733"
     ]
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RepaymentsOfLongTermDebt",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Principal payments on credit agreements and long-term debt",
        "label": "Repayments of Long-Term Debt",
        "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer."
       }
      }
     },
     "auth_ref": [
      "r43",
      "r522"
     ]
    },
    "srt_RestatementAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RestatementAxis",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revision of Prior Period [Axis]",
        "label": "Revision of Prior Period [Axis]"
       }
      }
     },
     "auth_ref": [
      "r158",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r231",
      "r277",
      "r278",
      "r412",
      "r427",
      "r428",
      "r429",
      "r430",
      "r456",
      "r461",
      "r462",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517"
     ]
    },
    "ecd_RestatementDateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "RestatementDateAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restatement Determination Date:",
        "label": "Restatement Determination Date [Axis]"
       }
      }
     },
     "auth_ref": [
      "r688",
      "r699",
      "r709",
      "r734"
     ]
    },
    "ecd_RestatementDeterminationDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "RestatementDeterminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restatement Determination Date",
        "label": "Restatement Determination Date"
       }
      }
     },
     "auth_ref": [
      "r689",
      "r700",
      "r710",
      "r735"
     ]
    },
    "ecd_RestatementDoesNotRequireRecoveryTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "RestatementDoesNotRequireRecoveryTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restatement does not require Recovery",
        "label": "Restatement Does Not Require Recovery [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r696",
      "r707",
      "r717",
      "r742"
     ]
    },
    "srt_RestatementDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RestatementDomain",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revision of Prior Period [Domain]",
        "label": "Revision of Prior Period [Domain]"
       }
      }
     },
     "auth_ref": [
      "r158",
      "r203",
      "r204",
      "r205",
      "r206",
      "r207",
      "r208",
      "r209",
      "r210",
      "r211",
      "r213",
      "r214",
      "r215",
      "r216",
      "r217",
      "r218",
      "r231",
      "r277",
      "r278",
      "r412",
      "r427",
      "r428",
      "r429",
      "r430",
      "r456",
      "r461",
      "r462",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514",
      "r515",
      "r516",
      "r517"
     ]
    },
    "us-gaap_RestrictedCashAndCashEquivalentsAtCarryingValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCashAndCashEquivalentsAtCarryingValue",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
       "weight": 1.0,
       "order": 2.0
      },
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows",
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted cash",
        "verboseLabel": "Restricted cash at end of period",
        "netLabel": "Restricted cash (less than)",
        "label": "Restricted Cash and Cash Equivalents, Current",
        "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as current. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r46",
      "r164",
      "r198"
     ]
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Restricted Cash and Cash Equivalents [Axis]",
        "label": "Restricted Cash and Cash Equivalents [Axis]",
        "documentation": "Information by category of cash or cash equivalent items which are restricted as to withdrawal or usage."
       }
      }
     },
     "auth_ref": [
      "r27"
     ]
    },
    "us-gaap_RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RestrictedCashAndCashEquivalentsCashAndCashEquivalentsMember",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Cash and Cash Equivalents [Domain]",
        "label": "Cash and Cash Equivalents [Domain]",
        "documentation": "Type of cash and cash equivalent. Cash is currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates."
       }
      }
     },
     "auth_ref": [
      "r164"
     ]
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsAccumulatedDeficit",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0,
       "order": 5.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained deficit",
        "label": "Retained Earnings (Accumulated Deficit)",
        "documentation": "Amount of accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r101",
      "r133",
      "r478",
      "r511",
      "r516",
      "r523",
      "r551",
      "r665"
     ]
    },
    "us-gaap_RetainedEarningsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RetainedEarningsMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Retained Deficit",
        "label": "Retained Earnings [Member]",
        "documentation": "Accumulated undistributed earnings (deficit)."
       }
      }
     },
     "auth_ref": [
      "r157",
      "r203",
      "r204",
      "r205",
      "r207",
      "r215",
      "r217",
      "r276",
      "r279",
      "r405",
      "r406",
      "r407",
      "r411",
      "r412",
      "r421",
      "r423",
      "r424",
      "r426",
      "r428",
      "r507",
      "r509",
      "r526",
      "r852"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue from Contract with Customer [Abstract]",
        "label": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations": {
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails",
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Revenues from product sales and services",
        "terseLabel": "Total Revenue",
        "netLabel": "Revenue",
        "label": "Revenue from Contract with Customer, Including Assessed Tax",
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise."
       }
      }
     },
     "auth_ref": [
      "r240",
      "r241",
      "r252",
      "r257",
      "r258",
      "r264",
      "r266",
      "r268",
      "r366",
      "r367",
      "r468"
     ]
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/Revenue"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenue",
        "label": "Revenue from Contract with Customer [Text Block]",
        "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": [
      "r155",
      "r358",
      "r359",
      "r360",
      "r361",
      "r362",
      "r363",
      "r364",
      "r365",
      "r369"
     ]
    },
    "us-gaap_RevenuesAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RevenuesAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revenues:",
        "label": "Revenues [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "srt_RevisionOfPriorPeriodErrorCorrectionAdjustmentMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "RevisionOfPriorPeriodErrorCorrectionAdjustmentMember",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Revision of Prior Period, Error Correction, Adjustment",
        "label": "Revision of Prior Period, Error Correction, Adjustment [Member]"
       }
      }
     },
     "auth_ref": [
      "r208",
      "r209",
      "r210",
      "r214",
      "r215",
      "r216",
      "r217"
     ]
    },
    "us-gaap_RightsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "RightsMember",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsChangeinOurInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Embedded Option",
        "label": "Rights [Member]",
        "documentation": "A security giving shareholders entitlement to acquire new shares issued by the entity at an established price in proportion to the number of shares already owned. Generally, rights expire within in a short time after issuance."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_Rule10b51ArrAdoptedFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "Rule10b51ArrAdoptedFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rule 10b5-1 Arrangement Adopted",
        "label": "Rule 10b5-1 Arrangement Adopted [Flag]"
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "ecd_Rule10b51ArrTrmntdFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "Rule10b51ArrTrmntdFlag",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Rule 10b5-1 Arrangement Terminated",
        "label": "Rule 10b5-1 Arrangement Terminated [Flag]"
       }
      }
     },
     "auth_ref": [
      "r751"
     ]
    },
    "us-gaap_ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Supplemental Cash Flow Information",
        "label": "Schedule of Cash Flow, Supplemental Disclosures [Table Text Block]",
        "documentation": "Tabular disclosure of supplemental cash flow information for the periods presented."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfDebtTableTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsTable"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Long-Term Debt",
        "label": "Schedule of Debt [Table Text Block]",
        "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": []
    },
    "srt_ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails",
      "http://www.tetratec.com/role/InvestmentsAdditionalInformationDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment, Name [Axis]",
        "label": "Investment, Name [Axis]"
       }
      }
     },
     "auth_ref": [
      "r272",
      "r273",
      "r274"
     ]
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/InventoriesTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Inventory",
        "label": "Schedule of Inventory, Current [Table Text Block]",
        "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": [
      "r26",
      "r105",
      "r106",
      "r107"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTable",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Industry Segments Details [Table]",
        "label": "Schedule of Segment Reporting Information, by Segment [Table]",
        "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r57",
      "r58",
      "r60"
     ]
    },
    "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Financial Information of Segments",
        "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]",
        "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss."
       }
      }
     },
     "auth_ref": [
      "r56",
      "r57",
      "r58",
      "r60"
     ]
    },
    "us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/NetIncomeperShareTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Weighted Average Number of Share",
        "label": "Schedule of Weighted Average Number of Shares [Table Text Block]",
        "documentation": "Tabular disclosure of the weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit)."
       }
      }
     },
     "auth_ref": [
      "r52"
     ]
    },
    "us-gaap_SecuredDebtMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SecuredDebtMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Secured Debt",
        "label": "Secured Debt [Member]",
        "documentation": "Collateralized debt obligation backed by, for example, but not limited to, pledge, mortgage or other lien on the entity's assets."
       }
      }
     },
     "auth_ref": []
    },
    "tti_SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Secured Overnight Financing Rate (SOFR) Adjusted For Required Bank Reserves",
        "label": "Secured Overnight Financing Rate (SOFR) Adjusted For Required Bank Reserves [Member]",
        "documentation": "Secured Overnight Financing Rate (SOFR) Adjusted For Required Bank Reserves"
       }
      }
     },
     "auth_ref": []
    },
    "tti_SecuredOvernightFinancingRateSOFRMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "SecuredOvernightFinancingRateSOFRMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Secured Overnight Financing Rate (SOFR)",
        "label": "Secured Overnight Financing Rate (SOFR) [Member]",
        "documentation": "Secured Overnight Financing Rate (SOFR)"
       }
      }
     },
     "auth_ref": []
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "Security12bTitle",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Title of 12(b) Security",
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r682"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Security Exchange Name",
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r684"
     ]
    },
    "us-gaap_SegmentDiscontinuedOperationsMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentDiscontinuedOperationsMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Discontinued Operations",
        "label": "Discontinued Operations [Member]",
        "documentation": "Component or group of components disposed of or classified as held-for-sale and representing a strategic shift that has or will have a major effect on operations and financial results. Includes a business or nonprofit activity on acquisition classified as held-for-sale."
       }
      }
     },
     "auth_ref": [
      "r10",
      "r89",
      "r90",
      "r91"
     ]
    },
    "us-gaap_SegmentDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentDomain",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails",
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segments [Domain]",
        "label": "Segments [Domain]",
        "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity."
       }
      }
     },
     "auth_ref": [
      "r236",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r262",
      "r268",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r295",
      "r296",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r643",
      "r761",
      "r847"
     ]
    },
    "srt_SegmentGeographicalDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "SegmentGeographicalDomain",
     "presentation": [
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographical [Domain]",
        "label": "Geographical [Domain]"
       }
      }
     },
     "auth_ref": [
      "r266",
      "r267",
      "r538",
      "r539",
      "r540",
      "r594",
      "r596",
      "r599",
      "r615",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r636",
      "r651",
      "r670",
      "r802",
      "r847"
     ]
    },
    "us-gaap_SegmentReportingAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segment Reporting [Abstract]",
        "label": "Segment Reporting [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SegmentReportingDisclosureTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingDisclosureTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegments"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Industry Segments",
        "label": "Segment Reporting Disclosure [Text Block]",
        "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments."
       }
      }
     },
     "auth_ref": [
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r251",
      "r256",
      "r260",
      "r261",
      "r262",
      "r263",
      "r264",
      "r265",
      "r268"
     ]
    },
    "us-gaap_SegmentReportingInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SegmentReportingInformationLineItems",
     "presentation": [
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Industry Segments Details [Line Items]",
        "label": "Segment Reporting Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SeriesAPreferredStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SeriesAPreferredStockMember",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Series A Preferred Stock",
        "label": "Series A Preferred Stock [Member]",
        "documentation": "Series A preferred stock."
       }
      }
     },
     "auth_ref": [
      "r765",
      "r766",
      "r801"
     ]
    },
    "us-gaap_ServiceMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ServiceMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Services",
        "label": "Service [Member]",
        "documentation": "Assistance, including, but not limited to, technology, license and maintenance, license and service, maintenance, oil and gas, and financial service."
       }
      }
     },
     "auth_ref": [
      "r650"
     ]
    },
    "us-gaap_ShareBasedCompensation": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensation",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows": {
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0,
       "order": 8.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofCashFlows"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity-based compensation expense",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "documentation": "Amount of noncash expense for share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "All Award Types",
        "label": "Award Type [Domain]",
        "documentation": "Award under share-based payment arrangement."
       }
      }
     },
     "auth_ref": [
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389",
      "r390",
      "r391",
      "r392",
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404"
     ]
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SignificantAccountingPoliciesTextBlock",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Organization, Basis of Presentation, and Significant Accounting Policies",
        "label": "Significant Accounting Policies [Text Block]",
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity."
       }
      }
     },
     "auth_ref": [
      "r122",
      "r199"
     ]
    },
    "tti_SinglineLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "SinglineLoanMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Singline Loan",
        "label": "Singline Loan [Member]",
        "documentation": "Singline Loan"
       }
      }
     },
     "auth_ref": []
    },
    "tti_StandardLithiumLtd.Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "StandardLithiumLtd.Member",
     "presentation": [
      "http://www.tetratec.com/role/FairValueMeasurementsMarketRisksandDerivativeHedgeContractsDetails",
      "http://www.tetratec.com/role/InvestmentsScheduleofInvestmentsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Standard Lithium",
        "label": "Standard Lithium, Ltd. [Member]",
        "documentation": "Standard Lithium, Ltd."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementBusinessSegmentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementBusinessSegmentsAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails",
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Segments [Axis]",
        "label": "Segments [Axis]",
        "documentation": "Information by business segments."
       }
      }
     },
     "auth_ref": [
      "r159",
      "r236",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r259",
      "r260",
      "r262",
      "r268",
      "r284",
      "r285",
      "r286",
      "r287",
      "r288",
      "r289",
      "r290",
      "r291",
      "r292",
      "r294",
      "r295",
      "r296",
      "r489",
      "r490",
      "r491",
      "r492",
      "r493",
      "r494",
      "r495",
      "r496",
      "r497",
      "r498",
      "r499",
      "r643",
      "r761",
      "r847"
     ]
    },
    "us-gaap_StatementClassOfStockAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementClassOfStockAxis",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Class of Stock [Axis]",
        "label": "Class of Stock [Axis]",
        "documentation": "Information by the different classes of stock of the entity."
       }
      }
     },
     "auth_ref": [
      "r156",
      "r172",
      "r173",
      "r174",
      "r201",
      "r222",
      "r223",
      "r225",
      "r227",
      "r233",
      "r234",
      "r275",
      "r309",
      "r312",
      "r313",
      "r314",
      "r320",
      "r321",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r438",
      "r519",
      "r520",
      "r521",
      "r522",
      "r526",
      "r527",
      "r528",
      "r529",
      "r530",
      "r531",
      "r532",
      "r533",
      "r534",
      "r535",
      "r536",
      "r537",
      "r550",
      "r572",
      "r590",
      "r616",
      "r617",
      "r618",
      "r619",
      "r620",
      "r758",
      "r777",
      "r783"
     ]
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementEquityComponentsAxis",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity Components [Axis]",
        "label": "Equity Components [Axis]",
        "documentation": "Information by component of equity."
       }
      }
     },
     "auth_ref": [
      "r19",
      "r36",
      "r157",
      "r184",
      "r185",
      "r186",
      "r203",
      "r204",
      "r205",
      "r207",
      "r215",
      "r217",
      "r232",
      "r276",
      "r279",
      "r354",
      "r405",
      "r406",
      "r407",
      "r411",
      "r412",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r428",
      "r446",
      "r447",
      "r448",
      "r449",
      "r450",
      "r452",
      "r462",
      "r507",
      "r508",
      "r509",
      "r526",
      "r590"
     ]
    },
    "srt_StatementGeographicalAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2023",
     "localname": "StatementGeographicalAxis",
     "presentation": [
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Geographical [Axis]",
        "label": "Geographical [Axis]"
       }
      }
     },
     "auth_ref": [
      "r266",
      "r267",
      "r538",
      "r539",
      "r540",
      "r594",
      "r596",
      "r599",
      "r615",
      "r622",
      "r624",
      "r625",
      "r626",
      "r627",
      "r628",
      "r629",
      "r630",
      "r631",
      "r632",
      "r636",
      "r651",
      "r670",
      "r802",
      "r847"
     ]
    },
    "us-gaap_StatementLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementLineItems",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement [Line Items]",
        "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": [
      "r203",
      "r204",
      "r205",
      "r232",
      "r468",
      "r518",
      "r537",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r550",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r569",
      "r573",
      "r574",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r590",
      "r671"
     ]
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfCashFlowsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement of Cash Flows [Abstract]",
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfFinancialPositionAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement of Financial Position [Abstract]",
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement of Comprehensive Income [Abstract]",
        "label": "Statement of Comprehensive Income [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementOfStockholdersEquityAbstract",
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement of Stockholders' Equity [Abstract]",
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StatementTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StatementTable",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement",
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statement [Table]",
        "label": "Statement [Table]",
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed."
       }
      }
     },
     "auth_ref": [
      "r203",
      "r204",
      "r205",
      "r232",
      "r468",
      "r518",
      "r537",
      "r543",
      "r544",
      "r545",
      "r546",
      "r547",
      "r548",
      "r550",
      "r553",
      "r554",
      "r555",
      "r556",
      "r557",
      "r558",
      "r559",
      "r560",
      "r561",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r569",
      "r573",
      "r574",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583",
      "r584",
      "r585",
      "r586",
      "r587",
      "r590",
      "r671"
     ]
    },
    "ecd_StkPrcOrTsrEstimationMethodTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "StkPrcOrTsrEstimationMethodTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock Price or TSR Estimation Method",
        "label": "Stock Price or TSR Estimation Method [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r691",
      "r702",
      "r712",
      "r737"
     ]
    },
    "us-gaap_StockAppreciationRightsSARSMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockAppreciationRightsSARSMember",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Stock Appreciation Rights (SARs)",
        "label": "Stock Appreciation Rights (SARs) [Member]",
        "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquity": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquity",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total TETRA stockholders\u2019 equity",
        "label": "Equity, Attributable to Parent",
        "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest."
       }
      }
     },
     "auth_ref": [
      "r99",
      "r102",
      "r103",
      "r123",
      "r552",
      "r568",
      "r591",
      "r592",
      "r665",
      "r681",
      "r779",
      "r788",
      "r834",
      "r852"
     ]
    },
    "us-gaap_StockholdersEquityAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityAbstract",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Equity:",
        "label": "Equity, Attributable to Parent [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets",
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total equity",
        "periodStartLabel": "Balance at beginning of period",
        "periodEndLabel": "Balance at end of period",
        "label": "Equity, Including Portion Attributable to Noncontrolling Interest",
        "documentation": "Amount of equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity."
       }
      }
     },
     "auth_ref": [
      "r74",
      "r75",
      "r76",
      "r157",
      "r158",
      "r185",
      "r203",
      "r204",
      "r205",
      "r207",
      "r215",
      "r276",
      "r279",
      "r354",
      "r405",
      "r406",
      "r407",
      "r411",
      "r412",
      "r421",
      "r422",
      "r423",
      "r424",
      "r425",
      "r426",
      "r428",
      "r446",
      "r447",
      "r452",
      "r462",
      "r508",
      "r509",
      "r524",
      "r552",
      "r568",
      "r591",
      "r592",
      "r621",
      "r680",
      "r779",
      "r788",
      "r834",
      "r852"
     ]
    },
    "us-gaap_StockholdersEquityOther": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "StockholdersEquityOther",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedTerseLabel": "Other",
        "label": "Stockholders' Equity, Other",
        "documentation": "This element represents movements included in the statement of changes in stockholders' equity which are not separately disclosed or provided for elsewhere in the taxonomy."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_SuretyBondMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "SuretyBondMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Surety Bond",
        "label": "Surety Bond [Member]",
        "documentation": "An obligation arising from a three-party agreement that legally binds together a principal who needs the bond, an obligee who requires the bond and a surety company that sells the bond."
       }
      }
     },
     "auth_ref": []
    },
    "tti_SwedishCreditFacilityMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "SwedishCreditFacilityMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Swedish Credit Facility",
        "label": "Swedish Credit Facility [Member]",
        "documentation": "Swedish Credit Facility"
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TabularListTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TabularListTableTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Tabular List, Table",
        "label": "Tabular List [Table Text Block]"
       }
      }
     },
     "auth_ref": [
      "r731"
     ]
    },
    "us-gaap_TaxesPayableCurrent": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TaxesPayableCurrent",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Accrued taxes",
        "label": "Taxes Payable, Current",
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)."
       }
      }
     },
     "auth_ref": [
      "r29"
     ]
    },
    "tti_TermLoanMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "TermLoanMember",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails",
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Term Loan Agreement",
        "label": "Term Loan [Member]",
        "documentation": "Term Loan [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "tti_TotalOtherAssets": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "TotalOtherAssets",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_Assets",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total other assets",
        "label": "Total Other Assets",
        "documentation": "Aggregate carrying amount, as of the balance sheet date, of noncurrent assets excluding property, plant and equipment. Noncurrent assets are expected to be realized or consumed after one year (or the normal operating cycle, if longer)."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TotalShareholderRtnAmt": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TotalShareholderRtnAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total Shareholder Return Amount",
        "label": "Total Shareholder Return Amount"
       }
      }
     },
     "auth_ref": [
      "r723"
     ]
    },
    "ecd_TotalShareholderRtnVsPeerGroupTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TotalShareholderRtnVsPeerGroupTextBlock",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/PvpDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total Shareholder Return Vs Peer Group",
        "label": "Total Shareholder Return Vs Peer Group [Text Block]"
       }
      }
     },
     "auth_ref": [
      "r730"
     ]
    },
    "ecd_TradingArrAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TradingArrAxis",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trading Arrangement:",
        "label": "Trading Arrangement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r750"
     ]
    },
    "ecd_TradingArrByIndTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TradingArrByIndTable",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trading Arrangements, by Individual",
        "label": "Trading Arrangements, by Individual [Table]"
       }
      }
     },
     "auth_ref": [
      "r752"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2023",
     "localname": "TradingSymbol",
     "presentation": [
      "http://www.tetratec.com/role/CoverPage"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Trading Symbol",
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "ecd_TrdArrAdoptionDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrAdoptionDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Adoption Date",
        "label": "Trading Arrangement Adoption Date"
       }
      }
     },
     "auth_ref": [
      "r753"
     ]
    },
    "ecd_TrdArrDuration": {
     "xbrltype": "durationItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrDuration",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Arrangement Duration",
        "label": "Trading Arrangement Duration"
       }
      }
     },
     "auth_ref": [
      "r754"
     ]
    },
    "ecd_TrdArrIndName": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrIndName",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Name",
        "label": "Trading Arrangement, Individual Name"
       }
      }
     },
     "auth_ref": [
      "r752"
     ]
    },
    "ecd_TrdArrIndTitle": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrIndTitle",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Title",
        "label": "Trading Arrangement, Individual Title"
       }
      }
     },
     "auth_ref": [
      "r752"
     ]
    },
    "ecd_TrdArrSecuritiesAggAvailAmt": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrSecuritiesAggAvailAmt",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Aggregate Available",
        "label": "Trading Arrangement, Securities Aggregate Available Amount"
       }
      }
     },
     "auth_ref": [
      "r755"
     ]
    },
    "ecd_TrdArrTerminationDate": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "TrdArrTerminationDate",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Termination Date",
        "label": "Trading Arrangement Termination Date"
       }
      }
     },
     "auth_ref": [
      "r753"
     ]
    },
    "us-gaap_TreasuryStockCommonMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TreasuryStockCommonMember",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementofEquityStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury Stock",
        "label": "Treasury Stock, Common [Member]",
        "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r70"
     ]
    },
    "us-gaap_TreasuryStockCommonShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TreasuryStockCommonShares",
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheetsParenthetical"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Treasury stock, shares held (in shares)",
        "label": "Treasury Stock, Common, Shares",
        "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury."
       }
      }
     },
     "auth_ref": [
      "r70"
     ]
    },
    "us-gaap_TreasuryStockValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "TreasuryStockValue",
     "crdr": "debit",
     "calculation": {
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets": {
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": -1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedBalanceSheets"
     ],
     "lang": {
      "en-us": {
       "role": {
        "negatedLabel": "Treasury stock, at cost; 3,138,675 shares held at March\u00a031, 2025 and December\u00a031, 2024",
        "label": "Treasury Stock, Value",
        "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": [
      "r35",
      "r70",
      "r71"
     ]
    },
    "country_US": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/country/2023",
     "localname": "US",
     "presentation": [
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "United States",
        "label": "UNITED STATES"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UnamortizedDebtIssuanceExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnamortizedDebtIssuanceExpense",
     "crdr": "debit",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsScheduleofLongTermDebtDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unamortized deferred finance costs",
        "label": "Unamortized Debt Issuance Expense",
        "documentation": "The remaining balance of debt issuance expenses that were capitalized and are being amortized against income over the lives of the respective bond issues. This does not include the amounts capitalized as part of the cost of the utility plant or asset."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnconditionalPurchaseObligationCategoryOfGoodsOrServicesAcquiredDomain",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unconditional Purchase Obligation, Category of Goods or Services Acquired [Domain]",
        "label": "Unconditional Purchase Obligation, Category of Goods or Services Acquired [Domain]",
        "documentation": "General description of the goods or services to be purchased from the counterparty to the unconditional purchase arrangement."
       }
      }
     },
     "auth_ref": [
      "r297",
      "r298",
      "r300",
      "r301"
     ]
    },
    "ecd_UndrlygSecurityMktPriceChngPct": {
     "xbrltype": "pureItemType",
     "nsuri": "http://xbrl.sec.gov/ecd/2023",
     "localname": "UndrlygSecurityMktPriceChngPct",
     "presentation": [
      "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Underlying Security Market Price Change",
        "label": "Underlying Security Market Price Change, Percent"
       }
      }
     },
     "auth_ref": [
      "r749"
     ]
    },
    "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails": {
       "parentTag": "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase obligation, 2026",
        "label": "Unrecorded Unconditional Purchase Obligation, to be Paid, Year One",
        "documentation": "Amount of fixed and determinable portion of unrecorded unconditional purchase obligation 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": [
      "r298"
     ]
    },
    "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails": {
       "parentTag": "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase obligation, 2027",
        "label": "Unrecorded Unconditional Purchase Obligation, to be Paid, Year Two",
        "documentation": "Amount of fixed and determinable portion of unrecorded unconditional purchase obligation 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": [
      "r298"
     ]
    },
    "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails": {
       "parentTag": "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount",
       "weight": 1.0,
       "order": 4.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase obligation, 2028",
        "label": "Unrecorded Unconditional Purchase Obligation, to be Paid, Year Three",
        "documentation": "Amount of fixed and determinable portion of unrecorded unconditional purchase obligation 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": [
      "r298"
     ]
    },
    "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Purchase obligation",
        "label": "Unrecorded Unconditional Purchase Obligation",
        "documentation": "Amount of the unrecorded obligation to transfer funds in the future for fixed or minimum amounts or quantities of goods or services at fixed or minimum prices (for example, as in take-or-pay contracts or throughput contracts)."
       }
      }
     },
     "auth_ref": [
      "r298"
     ]
    },
    "us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Unrecorded Unconditional Purchase Obligation by Category of Item Purchased [Axis]",
        "label": "Unrecorded Unconditional Purchase Obligation by Category of Item Purchased [Axis]",
        "documentation": "Pertinent information about unrecorded unconditional purchase arrangements to acquire goods or services, by category of goods or services. arrangements to acquire goods or services, by category of goods or services."
       }
      }
     },
     "auth_ref": [
      "r297",
      "r298",
      "r300"
     ]
    },
    "us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear",
     "crdr": "credit",
     "calculation": {
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails": {
       "parentTag": "us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase obligation, remainder of 2025",
        "label": "Unrecorded Unconditional Purchase Obligation, to be Paid, Remainder of Fiscal Year",
        "documentation": "Amount of fixed and determinable portion of unrecorded unconditional purchase obligation to be paid in remainder of current fiscal year."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive",
     "crdr": "credit",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Purchase obligation, due over five years",
        "label": "Unrecorded Unconditional Purchase Obligation, Due in Rolling Year Five",
        "documentation": "Amount of the fixed and determinable portion of the unrecorded unconditional purchase obligation maturing in the fifth rolling twelve months following the latest balance sheet. For interim and annual periods when interim periods are reported on a rolling approach, from latest balance sheet date."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_UseOfEstimates": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "UseOfEstimates",
     "presentation": [
      "http://www.tetratec.com/role/OrganizationBasisofPresentationandSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Use of Estimates",
        "label": "Use of Estimates, Policy [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r54",
      "r55",
      "r150",
      "r151",
      "r152",
      "r153"
     ]
    },
    "us-gaap_VariableRateAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "VariableRateAxis",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Variable Rate [Axis]",
        "label": "Variable Rate [Axis]",
        "documentation": "Information by type of variable rate."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_VariableRateDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "VariableRateDomain",
     "presentation": [
      "http://www.tetratec.com/role/LongTermDebtandOtherBorrowingsAdditionalInformationDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Variable Rate [Domain]",
        "label": "Variable Rate [Domain]",
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index."
       }
      }
     },
     "auth_ref": []
    },
    "tti_WaterFlowbackServicesMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.tetratec.com/20250331",
     "localname": "WaterFlowbackServicesMember",
     "presentation": [
      "http://www.tetratec.com/role/CommitmentsandContingenciesDetails",
      "http://www.tetratec.com/role/IndustrySegmentsScheduleofSegmentFinancialInformationDetails",
      "http://www.tetratec.com/role/RevenueDisaggregationofRevenueDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "verboseLabel": "Water &amp; Flowback Services",
        "terseLabel": "Water &amp; Flowback Services Division",
        "label": "Water &amp; Flowback Services [Member]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "calculation": {
      "http://www.tetratec.com/role/NetIncomeperShareDetails": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/NetIncomeperShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Assumed exercise of equity awards (in shares)",
        "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment",
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation."
       }
      }
     },
     "auth_ref": [
      "r784"
     ]
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "calculation": {
      "http://www.tetratec.com/role/NetIncomeperShareDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/NetIncomeperShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average diluted shares outstanding (in shares)",
        "totalLabel": "Average diluted shares outstanding (in shares)",
        "label": "Weighted Average Number of Shares Outstanding, Diluted",
        "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": [
      "r221",
      "r227"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "calculation": {
      "http://www.tetratec.com/role/NetIncomeperShareDetails": {
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.tetratec.com/role/ConsolidatedStatementsofOperations",
      "http://www.tetratec.com/role/NetIncomeperShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted average basic shares outstanding (in shares)",
        "verboseLabel": "Number of weighted average common shares outstanding ( in shares)",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "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": [
      "r220",
      "r227"
     ]
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2023",
     "localname": "WeightedAverageNumberOfSharesOutstandingDilutedDisclosureItemsAbstract",
     "presentation": [
      "http://www.tetratec.com/role/NetIncomeperShareDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Weighted Average Number of Shares Outstanding Reconciliation [Abstract]",
        "label": "Weighted Average Number of Shares Outstanding Reconciliation [Abstract]"
       }
      }
     },
     "auth_ref": []
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "SubTopic": "20",
   "Topic": "940",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1"
  },
  "r1": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "230",
   "Topic": "830",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1"
  },
  "r2": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-10"
  },
  "r3": {
   "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"
  },
  "r4": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(a),(b),(c)",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A"
  },
  "r5": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "10A",
   "Subparagraph": "(a-c)",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A"
  },
  "r6": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12"
  },
  "r7": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "15",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-15"
  },
  "r8": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "16",
   "SubTopic": "10",
   "Topic": "220",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-16"
  },
  "r9": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Subparagraph": "(b)",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1B"
  },
  "r10": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1D",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1D"
  },
  "r11": {
   "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"
  },
  "r12": {
   "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"
  },
  "r13": {
   "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"
  },
  "r14": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "360",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r15": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "825",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-1"
  },
  "r16": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "20",
   "Topic": "205",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1"
  },
  "r17": {
   "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"
  },
  "r18": {
   "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"
  },
  "r19": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "505",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2"
  },
  "r20": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "820",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r21": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2C",
   "SubTopic": "10",
   "Topic": "820",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2C"
  },
  "r22": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "SubTopic": "10",
   "Topic": "280",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4"
  },
  "r23": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "60",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "820",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482053/820-10-60-1"
  },
  "r24": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "SubTopic": "10",
   "Topic": "210",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r25": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "205",
   "SubTopic": "20",
   "Section": "S99",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480781/205-20-S99-3"
  },
  "r26": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1"
  },
  "r27": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r28": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19(b),22(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r29": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r30": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.21)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r31": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r32": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.22)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r33": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.24)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r34": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.25)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r35": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29,30)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r36": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r37": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "210",
   "SubTopic": "10",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02.31)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r38": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14"
  },
  "r39": {
   "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"
  },
  "r40": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "220",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5"
  },
  "r41": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r42": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "14",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14"
  },
  "r43": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "15",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15"
  },
  "r44": {
   "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"
  },
  "r45": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "25",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25"
  },
  "r46": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4"
  },
  "r47": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-1"
  },
  "r48": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2"
  },
  "r49": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-3"
  },
  "r50": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-4"
  },
  "r51": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "230",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-5"
  },
  "r52": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "260",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r53": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-4"
  },
  "r54": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-8"
  },
  "r55": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "275",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-9"
  },
  "r56": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "22",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22"
  },
  "r57": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "25",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25"
  },
  "r58": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "280",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "30",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30"
  },
  "r59": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "320",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//320/tableOfContent"
  },
  "r60": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "20",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1"
  },
  "r61": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1"
  },
  "r62": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "350",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "((a)(1),(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2"
  },
  "r63": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-4"
  },
  "r64": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "360",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r65": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "470",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481544/470-10-50-5"
  },
  "r66": {
   "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"
  },
  "r67": {
   "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"
  },
  "r68": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3"
  },
  "r69": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8"
  },
  "r70": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1"
  },
  "r71": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "505",
   "SubTopic": "30",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4"
  },
  "r72": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12"
  },
  "r73": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "718",
   "SubTopic": "20",
   "Section": "55",
   "Paragraph": "13",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13"
  },
  "r74": {
   "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"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "820",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r78": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "820",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r79": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "820",
   "SubTopic": "10",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3"
  },
  "r80": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A"
  },
  "r81": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2"
  },
  "r82": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3"
  },
  "r83": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-4"
  },
  "r84": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "835",
   "SubTopic": "30",
   "Section": "55",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8"
  },
  "r85": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "210",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r86": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Name": "Accounting Standards Codification",
   "Topic": "942",
   "SubTopic": "210",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03.17)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r87": {
   "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/2147480848/942-470-50-3"
  },
  "r88": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-11"
  },
  "r89": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1A"
  },
  "r90": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1B"
  },
  "r91": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1C",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483475/205-20-45-1C"
  },
  "r92": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5B",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5B"
  },
  "r93": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 201.5-02(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r94": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 201.5-02(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r95": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 201.5-02(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r96": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r97": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(20))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r98": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r99": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(29))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r100": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r101": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r102": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(30))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r103": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(31))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r104": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(32))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r105": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r106": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r107": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r108": {
   "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"
  },
  "r109": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "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"
  },
  "r112": {
   "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)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r113": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r114": {
   "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),(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r120": {
   "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"
  },
  "r121": {
   "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"
  },
  "r122": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "235",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//235/tableOfContent"
  },
  "r123": {
   "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"
  },
  "r124": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482130/360-10-45-9"
  },
  "r125": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1"
  },
  "r126": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-2"
  },
  "r127": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "360",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3"
  },
  "r128": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "420",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SAB TOPIC 5.P.4(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2"
  },
  "r129": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "440",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//440/tableOfContent"
  },
  "r130": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "470",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//470/tableOfContent"
  },
  "r131": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r132": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r133": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.3-04)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1"
  },
  "r134": {
   "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"
  },
  "r135": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "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"
  },
  "r136": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r137": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r138": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r139": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r140": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r141": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-03(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1"
  },
  "r142": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r143": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r144": {
   "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.10)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r145": {
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04.9)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r146": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "321",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479567/321-10-45-1"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "SubTopic": "10",
   "Topic": "810",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1"
  },
  "r150": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r151": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-1"
  },
  "r152": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-11"
  },
  "r153": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "275",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-12"
  },
  "r154": {
   "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"
  },
  "r155": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Accounting Standards Codification",
   "Topic": "606",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//606/tableOfContent"
  },
  "r156": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Name": "Regulation S-K (SK)",
   "Number": "229",
   "Section": "1402",
   "Paragraph": "(a)",
   "Publisher": "SEC"
  },
  "r157": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r158": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "105",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "6",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6"
  },
  "r159": {
   "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"
  },
  "r160": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "205",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "5C",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-5C"
  },
  "r161": {
   "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"
  },
  "r162": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r163": {
   "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"
  },
  "r164": {
   "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"
  },
  "r165": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(13))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r166": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(14))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r167": {
   "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"
  },
  "r168": {
   "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"
  },
  "r169": {
   "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"
  },
  "r170": {
   "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(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r171": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "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"
  },
  "r179": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-17A"
  },
  "r180": {
   "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "220",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(210.5-03(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r188": {
   "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(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2"
  },
  "r189": {
   "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"
  },
  "r190": {
   "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"
  },
  "r191": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "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"
  },
  "r192": {
   "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"
  },
  "r193": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "19",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-19"
  },
  "r194": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-2"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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"
  },
  "r213": {
   "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"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//260/tableOfContent"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-3"
  },
  "r224": {
   "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"
  },
  "r225": {
   "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"
  },
  "r226": {
   "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"
  },
  "r227": {
   "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"
  },
  "r228": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1"
  },
  "r229": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2"
  },
  "r230": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-1"
  },
  "r234": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482987/272-10-50-3"
  },
  "r235": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//280/tableOfContent"
  },
  "r236": {
   "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"
  },
  "r237": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r238": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21"
  },
  "r239": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "26",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r258": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r259": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r260": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r261": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "32",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "280",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "41",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r270": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "310",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "326",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479130/326-30-45-2"
  },
  "r283": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "330",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//330/tableOfContent"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "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"
  },
  "r298": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4"
  },
  "r299": {
   "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"
  },
  "r300": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4"
  },
  "r301": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "440",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-6"
  },
  "r302": {
   "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"
  },
  "r303": {
   "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"
  },
  "r304": {
   "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"
  },
  "r305": {
   "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"
  },
  "r306": {
   "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"
  },
  "r307": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "460",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-2"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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)(B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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)(C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B"
  },
  "r320": {
   "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"
  },
  "r321": {
   "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"
  },
  "r322": {
   "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"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "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"
  },
  "r336": {
   "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"
  },
  "r337": {
   "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"
  },
  "r338": {
   "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"
  },
  "r339": {
   "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"
  },
  "r340": {
   "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"
  },
  "r341": {
   "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"
  },
  "r342": {
   "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"
  },
  "r343": {
   "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"
  },
  "r344": {
   "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"
  },
  "r345": {
   "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"
  },
  "r346": {
   "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"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "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"
  },
  "r355": {
   "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"
  },
  "r356": {
   "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"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r370": {
   "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"
  },
  "r371": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r372": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r373": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(A)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r374": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(B)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r375": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(02)(C)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r376": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(03)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r377": {
   "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"
  },
  "r378": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2"
  },
  "r379": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r390": {
   "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"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "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"
  },
  "r405": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r406": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r407": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "15",
   "Subparagraph": "(f)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15"
  },
  "r408": {
   "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"
  },
  "r409": {
   "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"
  },
  "r410": {
   "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"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "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"
  },
  "r416": {
   "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"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "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"
  },
  "r424": {
   "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"
  },
  "r425": {
   "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"
  },
  "r426": {
   "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"
  },
  "r427": {
   "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"
  },
  "r428": {
   "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"
  },
  "r429": {
   "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"
  },
  "r430": {
   "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"
  },
  "r431": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2"
  },
  "r432": {
   "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"
  },
  "r433": {
   "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"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3"
  },
  "r437": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482736/825-10-45-1A"
  },
  "r438": {
   "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"
  },
  "r439": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//830/tableOfContent"
  },
  "r440": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "9",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481839/830-10-45-9"
  },
  "r441": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482014/830-20-35-3"
  },
  "r442": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481956/830-20-45-5"
  },
  "r443": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "230",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1"
  },
  "r444": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "40",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481724/830-30-40-1"
  },
  "r445": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-12"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "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"
  },
  "r449": {
   "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"
  },
  "r450": {
   "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"
  },
  "r451": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "830",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "21",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-21"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "835",
   "SubTopic": "30",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3"
  },
  "r455": {
   "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"
  },
  "r456": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "842",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "65",
   "Paragraph": "5",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5"
  },
  "r457": {
   "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"
  },
  "r458": {
   "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"
  },
  "r459": {
   "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"
  },
  "r460": {
   "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"
  },
  "r461": {
   "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"
  },
  "r462": {
   "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"
  },
  "r463": {
   "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"
  },
  "r464": {
   "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"
  },
  "r465": {
   "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"
  },
  "r466": {
   "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"
  },
  "r467": {
   "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"
  },
  "r468": {
   "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"
  },
  "r469": {
   "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(26))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r470": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-04(27))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1"
  },
  "r471": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1"
  },
  "r472": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "942",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1"
  },
  "r473": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r474": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r475": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r476": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r477": {
   "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/2147479440/944-210-S99-1"
  },
  "r478": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r479": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(24))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r480": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r481": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r482": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r483": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(11))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r484": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(16))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r485": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r486": {
   "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(22))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r487": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(23))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r488": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-04(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1"
  },
  "r489": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column A))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r490": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r491": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r492": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r493": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r494": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r495": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r496": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r497": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r498": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column J))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r499": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "944",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-16(Column K))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1"
  },
  "r500": {
   "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/2147480149/944-235-S99-2"
  },
  "r501": {
   "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/2147480149/944-235-S99-2"
  },
  "r502": {
   "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/2147480149/944-235-S99-2"
  },
  "r503": {
   "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/2147480149/944-235-S99-2"
  },
  "r504": {
   "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/2147480149/944-235-S99-2"
  },
  "r505": {
   "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/2147480149/944-235-S99-2"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "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"
  },
  "r509": {
   "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"
  },
  "r510": {
   "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"
  },
  "r511": {
   "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"
  },
  "r512": {
   "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"
  },
  "r513": {
   "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"
  },
  "r514": {
   "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"
  },
  "r515": {
   "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"
  },
  "r516": {
   "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"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r520": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r521": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-03(i)(2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3"
  },
  "r522": {
   "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"
  },
  "r523": {
   "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"
  },
  "r524": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3"
  },
  "r525": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3"
  },
  "r526": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r527": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-2"
  },
  "r528": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "27",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-27"
  },
  "r529": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r530": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r531": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r532": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r533": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r534": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r535": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r536": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480737/946-205-50-7"
  },
  "r537": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4"
  },
  "r538": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r539": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2"
  },
  "r540": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r541": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r542": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r543": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r544": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r545": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r546": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(12)(b)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r547": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r548": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(13)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r549": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(15))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r550": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(16)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r551": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r552": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(19))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r553": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r554": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r555": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r556": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r557": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(3)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r558": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r559": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r560": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r561": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r562": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(8))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r563": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r564": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r565": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r566": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(9)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r567": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r568": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.6-05(4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2"
  },
  "r569": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3"
  },
  "r570": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-6"
  },
  "r571": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7"
  },
  "r572": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483580/946-220-50-3"
  },
  "r573": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r574": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r575": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r576": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r577": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r578": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r579": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r580": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r581": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(a)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r582": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r583": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r584": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r585": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r586": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r587": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(7)(c)(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r588": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-07(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r589": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(1)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r590": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r591": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r592": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r593": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r594": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r595": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r596": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r597": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r598": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r599": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r600": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 1)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r601": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r602": {
   "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 C)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r603": {
   "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 C)(Footnote 6)(e))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r604": {
   "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 C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r605": {
   "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 D)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r606": {
   "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 D)(Footnote 6)(f))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r607": {
   "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 D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r608": {
   "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 E)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r609": {
   "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 E)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r610": {
   "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 E)(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r611": {
   "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 E)(Footnote 6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r612": {
   "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 E)(Footnote 6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r613": {
   "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 E)(Footnote 6)(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r614": {
   "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 E)(Footnote 6)(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r615": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r616": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-1"
  },
  "r617": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r618": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r619": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r620": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2"
  },
  "r621": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "946",
   "SubTopic": "505",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-3"
  },
  "r622": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "948",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1"
  },
  "r623": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "954",
   "SubTopic": "440",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1"
  },
  "r624": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r625": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r626": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r627": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r628": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r629": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r630": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r631": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r632": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "970",
   "SubTopic": "360",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1"
  },
  "r633": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "976",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1"
  },
  "r634": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "978",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1"
  },
  "r635": {
   "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"
  },
  "r636": {
   "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"
  },
  "r637": {
   "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"
  },
  "r638": {
   "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"
  },
  "r639": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1"
  },
  "r640": {
   "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"
  },
  "r641": {
   "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"
  },
  "r642": {
   "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"
  },
  "r643": {
   "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"
  },
  "r644": {
   "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"
  },
  "r645": {
   "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"
  },
  "r646": {
   "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"
  },
  "r647": {
   "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"
  },
  "r648": {
   "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"
  },
  "r649": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "505",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "13",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13"
  },
  "r650": {
   "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"
  },
  "r651": {
   "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"
  },
  "r652": {
   "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"
  },
  "r653": {
   "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"
  },
  "r654": {
   "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"
  },
  "r655": {
   "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"
  },
  "r656": {
   "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"
  },
  "r657": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r658": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(iv)(01)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r659": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17"
  },
  "r660": {
   "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"
  },
  "r661": {
   "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"
  },
  "r662": {
   "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"
  },
  "r663": {
   "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"
  },
  "r664": {
   "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"
  },
  "r665": {
   "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"
  },
  "r666": {
   "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"
  },
  "r667": {
   "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"
  },
  "r668": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1"
  },
  "r669": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6"
  },
  "r670": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1"
  },
  "r671": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1"
  },
  "r672": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r673": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r674": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r675": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r676": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column B))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r677": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column C))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r678": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "7",
   "Subparagraph": "(SX 210.12-15(Column D))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7"
  },
  "r679": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "10",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10"
  },
  "r680": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "11",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11"
  },
  "r681": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "946",
   "SubTopic": "830",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12"
  },
  "r682": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r683": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r684": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r685": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r686": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "16",
   "Subsection": "J",
   "Paragraph": "a"
  },
  "r687": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1"
  },
  "r688": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r689": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "A"
  },
  "r690": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "B"
  },
  "r691": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "C"
  },
  "r692": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "D"
  },
  "r693": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "i",
   "Sentence": "E"
  },
  "r694": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r695": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r696": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Section": "6",
   "Subsection": "F",
   "Paragraph": "2"
  },
  "r697": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Subsection": "F",
   "Paragraph": "1",
   "Subparagraph": "ii",
   "Section": "6"
  },
  "r698": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a"
  },
  "r699": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r700": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r701": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r702": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r703": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r704": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r705": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r706": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r707": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Section": "19",
   "Paragraph": "b"
  },
  "r708": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a"
  },
  "r709": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1"
  },
  "r710": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "i"
  },
  "r711": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "ii"
  },
  "r712": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iii"
  },
  "r713": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "iv"
  },
  "r714": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "1",
   "Sentence": "v"
  },
  "r715": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "2"
  },
  "r716": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "a",
   "Subparagraph": "3"
  },
  "r717": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form N-CSR",
   "Section": "18",
   "Paragraph": "b"
  },
  "r718": {
   "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"
  },
  "r719": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v"
  },
  "r720": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "1"
  },
  "r721": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "ii"
  },
  "r722": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iii"
  },
  "r723": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "iv"
  },
  "r724": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "2",
   "Subparagraph": "vi"
  },
  "r725": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "3"
  },
  "r726": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "4"
  },
  "r727": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "i"
  },
  "r728": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "ii"
  },
  "r729": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iii"
  },
  "r730": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "5",
   "Subparagraph": "iv"
  },
  "r731": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6"
  },
  "r732": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "v",
   "Paragraph": "6",
   "Subparagraph": "i"
  },
  "r733": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1"
  },
  "r734": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "i"
  },
  "r735": {
   "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"
  },
  "r736": {
   "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"
  },
  "r737": {
   "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"
  },
  "r738": {
   "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"
  },
  "r739": {
   "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"
  },
  "r740": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "ii"
  },
  "r741": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "1",
   "Subparagraph": "iii"
  },
  "r742": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "w",
   "Paragraph": "2"
  },
  "r743": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "1"
  },
  "r744": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "402",
   "Subsection": "x",
   "Paragraph": "2"
  },
  "r745": {
   "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"
  },
  "r746": {
   "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"
  },
  "r747": {
   "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"
  },
  "r748": {
   "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"
  },
  "r749": {
   "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"
  },
  "r750": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a"
  },
  "r751": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "1"
  },
  "r752": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "A"
  },
  "r753": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "B"
  },
  "r754": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "C"
  },
  "r755": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "a",
   "Paragraph": "2",
   "Subparagraph": "D"
  },
  "r756": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-K",
   "Number": "229",
   "Section": "408",
   "Subsection": "b",
   "Paragraph": "1"
  },
  "r757": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r758": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "272",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483014/272-10-45-3"
  },
  "r759": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "2",
   "SubTopic": "10",
   "Topic": "470",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481174/470-10-25-2"
  },
  "r760": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "12",
   "SubTopic": "10",
   "Topic": "230",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12"
  },
  "r761": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4H",
   "SubTopic": "40",
   "Topic": "944",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H"
  },
  "r762": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Topic": "321",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//321/tableOfContent"
  },
  "r763": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Accounting Standards Codification",
   "Topic": "325",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//325/tableOfContent"
  },
  "r764": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(17))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r765": {
   "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(27)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r766": {
   "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"
  },
  "r767": {
   "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"
  },
  "r768": {
   "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"
  },
  "r769": {
   "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"
  },
  "r770": {
   "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)(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r771": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "210",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.5-02(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1"
  },
  "r772": {
   "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"
  },
  "r773": {
   "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"
  },
  "r774": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r775": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "230",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "17",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17"
  },
  "r776": {
   "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"
  },
  "r777": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "235",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.4-08(d))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1"
  },
  "r778": {
   "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"
  },
  "r779": {
   "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"
  },
  "r780": {
   "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"
  },
  "r781": {
   "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"
  },
  "r782": {
   "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"
  },
  "r783": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "260",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "55",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-55"
  },
  "r784": {
   "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"
  },
  "r785": {
   "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"
  },
  "r786": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r787": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "320",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//320/tableOfContent"
  },
  "r788": {
   "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"
  },
  "r789": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "410",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481850/410-20-50-1"
  },
  "r790": {
   "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"
  },
  "r791": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "450",
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//450/tableOfContent"
  },
  "r792": {
   "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"
  },
  "r793": {
   "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"
  },
  "r794": {
   "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"
  },
  "r795": {
   "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"
  },
  "r796": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r797": {
   "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"
  },
  "r798": {
   "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"
  },
  "r799": {
   "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"
  },
  "r800": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r801": {
   "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"
  },
  "r802": {
   "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"
  },
  "r803": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "715",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)(ii)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1"
  },
  "r804": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r805": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r806": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r807": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r808": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r809": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r810": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "718",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(c)(1)(iv)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2"
  },
  "r811": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r812": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r813": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r814": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r815": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r816": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r817": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r818": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r819": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r820": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r821": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r822": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r823": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r824": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r825": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r826": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r827": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r828": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r829": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "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"
  },
  "r830": {
   "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"
  },
  "r831": {
   "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"
  },
  "r832": {
   "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"
  },
  "r833": {
   "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"
  },
  "r834": {
   "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"
  },
  "r835": {
   "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"
  },
  "r836": {
   "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"
  },
  "r837": {
   "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"
  },
  "r838": {
   "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"
  },
  "r839": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r840": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r841": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(c)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3"
  },
  "r842": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r843": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r844": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "860",
   "SubTopic": "20",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4"
  },
  "r845": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "944",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.7-03(a)(15)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1"
  },
  "r846": {
   "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/2147479440/944-210-S99-1"
  },
  "r847": {
   "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"
  },
  "r848": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "4",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4"
  },
  "r849": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "210",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6-04(18))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1"
  },
  "r850": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "3",
   "Subparagraph": "(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3"
  },
  "r851": {
   "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)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1"
  },
  "r852": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "220",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.6-09(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3"
  },
  "r853": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r854": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1"
  },
  "r855": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "2",
   "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2"
  },
  "r856": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "3",
   "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3"
  },
  "r857": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  },
  "r858": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "946",
   "SubTopic": "320",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SX 210.12-14)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>63
<FILENAME>0000844965-25-000036-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0000844965-25-000036-xbrl.zip
M4$L#!!0    ( '6(G5I>"L8> 0@  *PN   2    83(P,C4P,S,Q97@S,3$N
M:'1M[5I;;QNW$GX_OX)'1M,$D&1=K,B6'0-NF@)YR&E/:J"/!]SEK)8PE]R2
M7,GJK^\,N:N+)2<RXF/+:/+@:)>W(?E],]]P>9'[0EU>Y,#%Y;\N_MWIL)]-
M6A6@/4LM< ^"54[J*?M#@+MAG4Y=Z[TI%U9.<\\&O<&(_6'LC9SQ6.ZE5W#9
M]'-Q')\OCL,@%XD1B\L+(6=,BG<M.1@##/EH( ;I\"0]'9]FO1%/DF%O^!9.
MQD+\K]_"IE@]MG%^H>!=JY"ZDP.-/SD9=,>CTI_/I?#YI-_K_= *52\O,J,]
MCF>Q??P9N]GJS,.M[W EIWH2IM2*39OBU"AC)T>]\.^<2CH9+Z1:3'Z\LI*K
M']N.:]=Q8&46BYW\"] 2-"H\SJ.A8VRMI(;&\/Z 3/UPF\M$>C;L=_N;=NZV
M,,4E!?M()O;W,O$]6"\SF7(OC6:_5=95',?VYD#M_5PI8/TA[_1/7O,WS%C6
M'XGF(6,^!_;A-LVYG@*[2OV!SN+*L2MA2F+@X2_Y[Y &< Q[@V:)?^<VX1I<
MY]=;!0M::"H9]'J#K3D\)=]>'?7?]LZ?R(23G29\;+.?+!<+]JG+/E6VS!=M
ME@:.+7#EN']U-#I]7@OO6:1F\)(+@3&AHR#SD^%;[#*@3VJ!R)MT^J?E_\N'
M[C:WWVU,?:HQSS>6X*S[=DQ3_LAR/@-F829ACKSUN73X5!J+V-?L%V,+UN]U
M_LLR]$G$D4RZE*L'&G\M"W#L/S!GGTW!];<M'7OJE6M=_EEQB_Z) <)%L$_<
MIGG$V[#?#FJB38[B^L/UYRMV#6FNT9JI!-=F'W7:17*</0"93XK#%T:;P8'0
MYB?N$ A(D&+!;K29*Q!3:&^P1QB$O#8H2G$$+C7C>L$J[6T%:#?*U*!8$3:<
M%?A$=K*,4\BQS!22(F>LMU5!0PK.<;N@*@6_@4#,99\.WPDT!H=40>[6T2V5
M%N4M5M/8'"T1".AY+M.<N8K^K-K/P4+="4V@D$ZA#B9)/9<^QPFZ$H,GC4[]
MEFB:$3C-&383+%FL+\-W[#^:N<-#QSX%!XWH(J"NT-1&X&-U++9KY5)C0"FB
M/)<Z514Y5D3L&G3:B'9IU8*5"#CB"G%(J149:ARZ.T,CWX2DCMM4HU)8 1E@
M$*9A.!?L2;G+6:;,W#7TL#"5SEO2K)Q>1KO1RO8:REUCS):U&T!_EK#(OM/L
M,<P].1":76]@\M71Z: _/G<UD6KM32[99)CGXBM"ZT?&+01>(,YE@CDER39
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
M:EOSBDY<P#3+6*Y*9.S )OXDTW[#1-==&A:K"O,S1[C.]\V+)&CA=XO!L9>
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
MC".BP>T:7G_4TIPK:FRSSJO-E&EU2^VS#T.()312CS8@]4AUBWB>.81E,YX
M(Q.@=*83;P26ZS@(#]F1 C,9LQ8.E_&=9'4*LV\! ^SL/7K%);&)8>(>X[/8
M]RUT8=;*7T[DT,XF*Z2((=8*.J,H6J2%F1F%S:1[]Y>WCQ1@]B<U?DP<^PFD
MSKW[S?PCP&-JN'Q3<26#SUUMR%LKSW0>/43\Z=2)=D/GY>"T^M%@IK:R>C 3
M3X1:0N5ZM!&@'[8;$:'T#&8>#ETS[1<:TJGP_0KT_7HOQ+30JP=V]H!QGR@8
M*J9O4B]C+."!@+Q):>_=5BM=I;U<"R <NY(2V(:Z:7<$I@&!I73\YXG N-<I
MAU\@KU<)P(D0P996S'S"<>34?T)'__.N6V='&:<+S2]QC\?7BGA?("FY_EYC
M(*:H[DWC$HU*5VY56\KR?,FMT@&V12#?.36"8T^"8W=RE/(A[RZQ9[/2U=K+
MO)G]C(-7MN3$]EDJ?]RJY+ \E8KQ&I.O7^EO[79=R2JPM&7M]NVB3#,5+$H1
M99J*(LHTCZU,\RNQ@%VH]#2B] -&$;681U;J"'Q7JX>\E[?6L9VO$/&CLD)-
M+:S6,?TE&RVJ^>&C,E:\<> 1I!=@96ZG6()BLEE](VJ-C%5X&0OM2K#]*ZI3
M[(&2A,!\<=W)$"N_99'M3!M-J^7?FH0W!<K._?5%F&1N_%H>>D[?4N_IZ;K_
MM)WPY22:DEN/;"YO^=UQV>DQ3%GR)>)Y8/Y?",(\EAWS<A(HMQ>/ CO[;0E\
MB3G!Z)FSY&#Z1V"^$&LY*"3&1AW7H)ZE$[CZFB,XH(Z>;>#_KF<TTO,OB>N^
M S#^AU@!S7L8UZIT-;D*.Q?SI039;D:VZTZ.=T&V[4I7;58[[35=3WE)F3VX
MBGFDGN^:.H934<EL/XGV"!J\;B""9V#,2-5+A-NI=,6H)PZDTM:8[-0K7459
MT\R<%Q-WS]*F[Q*#2D3786N^)[E4IP#7@46GC1>(93FO>*JS0?>%-3S:BQ]]
MX[A73C#PAX'5BY;R.%U)Y%6FX%4&#DW)&T[6F*\\0SDDT/,!<0U[; M$I=)M
M*LN59Q$0U]7GY^20(Y):ZVA["05WU)]B(9<)U5$K75FI5SOUY5P?T3E^W^JH
M2,1J@-BZ5FW+:YK$"^,X0N2M_0*O=9;S(81AG%4PQ2!\![+-2Z^8#UQO5K7V
MLKX0=O&^!=$VB&PB(N5JL[.=5\Y)GF:)%W@ZH?,'ETZ(:4CT;4)M#[P)#*,[
M6&L8==2(SXV$Q;F98(\ ?!W"%_QD5LC98S#=T#YIH>-<;:8TIA!VY[[%_0[0
MVP;T-JH=>4V42UB?<;#$\8E5G+2*P)0YK^:(:'V=\[P-57> JCMRM=Y8[OYU
M2"/U%-&\SI7> LVP&L!SLU-M*FWN(KM[-:NP6:[_7I7 [$2I!%85YB5,L%;E
MXI1LJ>S9G<(P*2+'YUBU_#=D(?QO$)C6W"Q5$6G*I,5]W[Q ((*-^C4"86[A
M+H-PUZK-UD8CB$6@J1 U700>%89'K;4\4.#0.II/X?.=Z"/XT'V?5^2GI,>+
M="2FX 0:OHZ!^9N;?WZ,7%<K755I59OMW>??";RN\QP*Q*N&>%6K=6V-NRCL
MH[CJ)( %.@/3BF*XOAOH/\5QW 9&4@*2K+4KPC$W_;(SN6I#$ZEJA[64"D$F
M.Y>KJHHPES+68XSH&!<<!C_$T=$&0B@&X0.#8&Z*;56Z+:4J=]8$X815M&/Q
MLR4:VY5NLU-MIPQ^$T90JN!Q; \-'X8STY8FKO/L4D^809M63"7@>6L_1-#<
MS*+OL$(I35F35"<LHGV4%!6'5R"AKJKMX+CZ6(VC\+AZ\M$!T?8&TRD>:ZY-
MQ DASE3QU@$*X+"NUFI6&S)?V=^GB/CUTZF+1+P"B&\JU49S>6BU,,I23^Y
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
M7"4(35QU/%<Q0CMG-15Q7[Q$%[\Q<9]-F]4J-.:+<72*%1<5> W>&E\?U3;
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
MU$IWNP[9PL#FAJ;62-X=T51.DQQ',%1;G663O*Q3F%>?XQR<>D+DG0T(QKD
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
MF-'$!<6MU.5V%3U-W7(P $HPX,&<1S09V7B,>3N<V8^A,3F+EV)[F2C.%_L
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
MFU9I6Q4(RZK=TJIVFR=7N%MSD9(S^PN0=:A+C28?F)V6;%2KS-[^GC-[*Y3
MFX[##W&;Y4]68(X]Y1_&;/X^M-]7DGBK4J50>=ZM;T[W0CM1F<1]@FFKW?5I
MJQONFZ.!Y3=BJAHU8BR6P=II7UQW-55K9\7'94:W9(UCL$;O^*S1N;AN:VJ[
MU:LT:]10 =>GI!^L7MY/T; R#3"]V$E3)4X=.;1_? [M7ERW-+7?VUEY5:=@
M_NS):D.U^2'("O-\.FJ_O=J\NDID54/!O\9HRT7WXO>YPQBGPA3=C%ECAV2*
M_L7UH*4VM:P)!$6MH2*QJ&-X$9(@UQ'DAOKC0Q#DX.*ZUU/U?EFUR$<@R!J*
M\.K9[NGQU#]Q$JB(H6*K:3Q)E/J0YV)G*Z.M.K^O(6F=1%RVB-HX2<V@'UTS
M@+5TW0'[O5>6J5(S:^0DR:IU?++2+JZ[;;6G5:7;P\D(_AUMBK(297<)"O*L
M7AD:Y,S:/CZSZA?7?57?_5I+1@8K0U4;FOP<@JIP!J,ZZ.W<05P&!F4<IA2>
M.'X&0;=-9I&FUS@.(PFR-((\_KT]Z(GK7DOM#G9NHRT#@YDB_/@;K.I3$G 2
M<!)PM7CJ9"\_'G'$O2)TK;SLJ"(IR<N.4[!VCY\#!Q[@M:;UU&9I_E?-7*R3
MI*OC)\&!(W>M-;NJUJ[V+5H-1;^\[C@M;NT=/SNOBZ,MFZJV>W:>O.^H#%D=
M/\<.]-!UNZWV]6I?H]50!^Q0OK;8,: UQY;" 394*3#H^Y3*WDJ!1\UEQ?%%
M!2C!:ZW3 WNQY+#[3GBM: 6J9&')P@6G;!Z"A35DX:8ZZ)5\E5L1%JZ(F; Z
MGVFQ+^=.#?>[E6RXW]JRX?[G</Y,/(ACM:5>3U]MJ=?34UKJW?WK]N[Q_OOG
MVX?=&NWGW__#:,K&@<7N)]%)1'OQC/: O=;*:*R,QGO\A"GGUE/:K1ZK;R4V
MM0'2QPZ,B6E"U*9XBW;+U-P<?LC;%WKO,GMU5JX%(6B#1I-KA*(]"/O%&@2N
M:_?7;I76@S#])5MMJKMVJ;HTYDK7_QL:<^4Z1U5ZN<FAS/L=RGQT$I:]Y<YN
M:O0GTS8],%&4)\<9RQ9C)]A'2=MP-Q'9I2$I_(Z44-AS;%]<]P=JORF[B$GJ
MKQ+U;XB+ED3]G8OK05,=:#N7A90Y!KK>>6WIN/]NO"@XG087VBX9Z83O"W.+
M>H#BUQ"(A6F]BQ//FWK6R+9J7 C*>^9]",F=Z ;3B=3.H"J5<R=KTG\S7#%?
MV@OF<\N429M%Y>0]3D^+B/Y!0+$PP?=14';[U6X6(+,R2Q24)1$.]K52]4%5
MNLZ>K#'YI^/^P,%0<]=Y<IDG[<EM[4D$Y&?[F^N, (I%R;V/>2/J8/=>/=*@
MK SAY#4H=R,<S%90^[NW_ZNI19FX[Q1+7.'SB,]#$@8O-4M<[:;GB.^4*;(V
M6>1L\Z**0:7N,B6O,LH];#<A271>ZM+N9PVZ/A[>*AK\ENPJV;44$V ;=FTA
MNVIJMS07Z;CLFCLI,)FP5HNQQ6MRU_3ER^>%[# QY%ZQV8OUJLP,.Y@ @@,<
M,3VRF.$J0Q=>IDSXH#0#!SU;%O[_ *?<TI>>XD\-GU+&7#8/W-&4)N#RD;F
M"@,\OWA6+E @/#9Z'<$AGE;!OSHS.F\^YJ"2^9CM'?(Q/1^G):^F+O;;J^F(
M_79Z&N;#X]?;N\<=TS#3*(N_,&4;^D7!U,WXJ-YG^\8>WXR?#1O\E$?G9C(Q
M+1/+X5. T%G)WZP*,]X'+O&8.-1V&9@ -,_T_'"">S1(.F\NYN&'/_<;@UZW
M<.*EWNAII>4X=O5.:8F7I4VD[NJ],A(O<PZ1K'#RGLQKW&]>XX8QW#)ML,R(
MT$$; X2Z!(/H_W3&IO%CN]C/J;J#I^30]3:T];_]=V#ZKP]L%+BF#R;\I^<[
M<]&QFY@_V?CJ;^8Z:3Y=%S.-P235WU?DVDMF$$JZ1[IO[4KW.0(:F!O35UN#
MG9.JY)5O$9WUX(/.-MRQ\L7TIV8PDQ? 2[2_H8U_*;3?QUN\IK9SY%U>_U:&
M;#;TZ2^%; 9(-EJW*ED#IVWJ4V)3,GBT0Q^P$\X/ZVUHQE\&X0^:.(&BVRNK
MR4H%S.2S)YL-+?-+(1L-R:8SJ$HOQY(L3'IOKXJ6)D^+^9PB,G-J)-DB: _P
MJ+FDV)0$4XJDT"^N!VIW]U28$O%V)$->LJADT;(37TIAT=;%M=Y7M4Y9Q53'
MXM&,S)=M\EP64F#UAK[4]^>OP//-R>O[H][ ?[:5_V/8@>&^TE6CJKPPA.98
M<0)77* HOQM>-*5:!?MAU%#",Q^"WFF?EW?__7#[3OGG[P]OE$N,RNLQ21T.
M6AP@]'KM_1O%FQHNXXDZ<TP89V/*7_BED*6]V*Z_L\R<W\3"V&3OP<"V7=NS
M:S=FU_;%M39H9'EL # +_J4J-N-Y%2X 31P&,S&&KO,#O.\)8UY#^0C[L)\H
M]\*?NHPI,SC@U%,8D/0X+9F#B,QE(^3AL6+02YXP]ZDP[ ;K8?<[+/K%\;Q[
MFT,N8?H6!ECGXKK9R#) !+QX)A<"PH.?XW$27,2)92EK*[VO7B'Y<9%+%@DR
M;NN-'BXS=SP3W_?.91:\^)G%3<%^7<P/$@*X&?_$&(* "/SLGZ3U-CN8H-":
M2Q!._'?JQJ!]8E=#EQD_KHP)[/"=8;T8KQXJ@&2>D&E?+0%N^<S9P-^4$[;4
M$Z\FR@)WZ9-H ![&1,:YX?JOBN\HQA/P/D_C>IDREPU?5RXSE*GA$7N0#L8?
ML9]SV# F;;DJ218XBC,G2.&2(Q!U+HM_XN&G(&K'P8C1XP -Y$15L<0;4(H
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
M) Z=:$;<0"$9A7$,Y3>'RXU$QM9"RIU'KXICC2'X%YH')\EO9<&8^L+?1K#
MCH>81<Y+;8"PR<S ;)JA@QDZ=$^*[3!<YK\JHRA-C&<"KL:W"II,G>P^)4F=
M'*ED;HU[]Y.O(E 8J70_06U1!O6W^#P(%*^P%34 -ZB[T8RG1A!AG'8!AK'B
M6="<F.L7%L*(.";7*$!,&*+E])@(IB9$Y0*J/P-T,6Y+IUL@4F(2440,%O^(
M">)./,\9FU/S)CJ(HJHARCU>:%,0WVOZTE0!WQWL\]S;Z/=>@@UGQ2R?P,=W
M#FO"WP).J$Z1A#1FP494$64QA#W^\9&516*^72I%G"6;I8^P12SS1J[S$B71
MX4,!UQ#8,4O%:_;4Y^*+^)DQ9@WE'MS#X F3];5NV,;K!4U_#TUD(ZS@2]@/
M82HITDLD*$!D"ZO(9933EI2T[*?I43(&)S%X\"TV)!7S:?"I%4@L1,##6Y&H
MA<JJ)(6GAGRG]/9P<Z*"-&K90BW'+?,'QF[BVP'7]'XLP>X%>!"4;&B9L3C]
M0]P,C%<=H@U^096]B<=D!_I%<12B/;8!5Z%/*=F+6>*/4V<&(/O:4#Y8AON#
M^QXWMI'X9+Z@'3U4T GEGE#_"Y)0_#C<Q._ATRFIY.'6$7?(>V-F85Q2.$FK
M-,>37WD_%=/'^TJ>,TUO]&@99)JDB22D+Q4SI_$;W4E-3(OS$L] BI*AECDJ
M?)&/R?@@T(0L3R5]F=2:DM3:JD$7W?VE0ZYO7[]28KR1D7BY@>^:XM(>O213
M% +3_ R&XSAF5.@==H1&^V%B/#MN4G0LT;>*25GDC8B^Y"/+,&?>"ENLDSC<
M\HE+)D+6B7^3XW@Q:U*A/L,*RE!3)(^-FIAQ#68H6"S!OQ0=!U9 @/?\SCBZ
MLPXY-_R>=.X=J"8*G7=0Z6H#=>6EZ$CPK=$LRL3$D@#7]\/;ON2.$"K/!KY6
MN-?4LC]MAV.\TN=27\0\0((;+X9)/QV#W<&M/-[_AYJ=X::HUQ*^SQM-V3C@
MG>5I>T*I\WV @8OK\#<LF**J\)DHES5IBJHB+$.)F-0SJ*'4,RP7)A^JBX&&
M:!P.5R]1VXH7&[-2R"P+38L5?YU +'PT]%*%.QQ8XRA1(9GRF/YK8=E/ HQP
M8',[;!J4_FBTD>5H2?KF>0B#U/@ZWP:I-81"(D(C]O5[8$T23:4:RJ?EUE/Q
M%5)X:&YUHFZG"SU!K&$H82DD%IG/:6&$*">8>O8_194RSWR(CY<&K(703)P3
MC8G',ZH;C9.CZ??P(16 I25 4_H)SM.C<YJ3A;A..M3%, &54X3C+IT<XQ$>
M8S^2UL0F$&P.P\1IW%SV)')94F&4P'_(^FF!$I"(G]C0Y1/16N&-X8W+P&"\
MA=,^O?( <6A)43$0YHHC]?#XCBGJD#Z0H I#PP^ ! ">'7^//2C83\,CX/",
M=SIH)*Z)B@)OT9'']9;/QN,^"0HS$EA+1B/A 71/,RG]3R;J\7"19_/)<7D@
MBZ?Y+^@YH2J'\ 3V% /^7 72,/##NBDQDP+6"GCN$9\_,@X+ML8!=[]5$.C
MD$@#/ V=*RW32^1)ER*/^PV]<VB1/$%H#!GQHD5-C19E(2=E.SM,^IH:)(WZ
MGI"4X,)2. ]PM*360[ N>QO(#!;C3"/<8C>E0P&^1_AEY'J0FR^LG.BW&"T
M"@DF0,.F\(93 ZXBAK%J3H6MFGDX-33 7C (CH5\Q UA\"]JWR,8GK]T]-I0
M/D]60]#4$<@6^^ KJ,E_1(T"J$V R#S<RIJ[3R^L"*MA5FLK0DD4UCMBNAQ9
M'AB132$:T:HZ,6UN*9-O;9@==A'=32WZE8CXF#UY@#$"60*^-32'_ER:'YE;
M_8N^(F&LRA@_FUZR1R#*WBRP8Q<4(CTK$%PTA/\Z<1'4"[. .+EP^RLJW5G4
M24 ,U#+3Y2T'1:NJ[5-_-O3W_^)X7GQK_7KK<1OB?O)-E#?A X6CG!JE2*Q.
M=UV,<I((P7Q1I&;A."0D!M?:F#V*R<2(/(HRYS,-HQ:M>%EMP@.$.":.Q\,C
MO&8*[;H%7%.L#BT]0L;"95<BYP7]F[#M3?3RQ;&EU#P+B>$I$JN<(!9NK;]1
M?DU\7\VU._)FLKX+K^X8GYSF34EB3Z)@*(5^']C<YYX=CZ6*99-B!ZF547?5
MQ0@8@097Y?T (E>7!F%&G"/,NU2#)+]QS<W5"($F#Y 9PO:CF*OI9>Q(Q>=
MX3$LE^.>?K00QLA"! 9"G9B^ "&_DT2;U&7F;(AE #RO3EA<T7U^+%;3;2Y8
M$5]$XZ8P09WW)HLN0E#GK(T?IY]KDQ%/(.%&?)H-SY,PR"F;.WA!RR,EPT7]
M84?$/PXUH,"1&T[1*BA9-O6AWXMDT;'A4([KLH)GV=1%:2]GP33;P:8T6Q4V
M-A=YCW&KR9 TP(0 'S3LS4?6'<]5B:^021PZ;J)='I>0 ONCJ9B5ZYL^T@HP
M+%I?\)7I)FZ>TRLO3'>A#"*>\L#'L/ 'R; 4'(DNH&V+&$\4\TJ154-&C33Y
M=1O2^(+,)RCP:T6J2Z;-,2;"&3Q6'CKI FBAN\0%9BC]Z5$VP<(.3TS"]E%V
MIPA\1T@'T1]X402'[HJG7.ZBK;5F(3K\'C7 ^29>7Y@&VQ?7K4UISV^2R3/Q
MA5MD$XF[>X^%5[<.9NKBIQG:DX//Y+4Z.*''<RP$5L)]0$6W!N:IXIG0&I9-
M)ZMPBLJVSOJL@;GC&=;OX G//X=@2;U;_KBXR? ^^?46E)+M%<ZX['3RR+Z%
MM!X <2*Y/"6;FHU7DJG;N?J6Y.O3T=4N4CR#HS?-Z&W9-..38;K_PI$O<8L,
M;[5'1J>[VHJBTUWMD?'IYO-WY5\W7_ZX5;[>WCS\\?V6^F64WQV#OSQE2Y7H
MCO$I<IWCUG0%$V./UMUI0PW]YW@P^W8^]!RCZY2V/_'?Z13"VGMOJXV-G1+C
MYE&A_],9F\8/GN(;#A_X@H.!<3(!]Z0H)UVA.Y;XIZ(E1?:XM803QULP./C(
M#&,78$3[P'+HAL'3EU^HJE7#X(\K9C+-F('L2:]ZP^^#^$\P@NO8(DDD;.W!
MV26Z?2"_8.4P%.P*[R&C4QEH#H$TY8,ER"Y;LVV^X63-IQ_MS(SO/RA<9L<U
MI0)XW.H+\\!"+X1<C(;R@:;A1G9=-)J*+[Z,"6X]7?(UWY"?9., (9OY84.,
M!<QXV" R*IN)#;4B3:Y2J#E?BLKY)!*TZY!(0)HC39^T+JHMO?X,*\$P(7M)
MC,%QGC%V@0XS>-@T.QNL-V$IBA;@<S><'DH?AMEJ&#U^0><!C'&T^N&M5IBB
M1I=TBV(SV1=I>47*:(H8-9(DSA!K8\)N]2!)Q" )TYX'/@]@9.R-(A^\3Q/?
M@>-&G6U$ IX_I5L=Y7[D.V$ *12J>H90?9-ZJ#PPS#KYBH1:%D%QC#TAC"((
M40P.;Z%QJ\*)Y%<F8'^C"PIR5^0:TVWC%8\X14_S/%E@? "(.'LK^^R/0L(F
MNN+S3DN<&GZP5UZ:$+;"7RP^"*L6P,$91C<]Z-::,W+S)W$@1\'Q[.10\1;M
MSF1"-\-(5#:+XTI+@$],&K3#T5T4XZ?GZ#?X'$\ 7^[^+B8F\NGJX8U5#(DP
MN1*<AC'BBB^OHB;$ +>8DKJ*7YZUF:0&:K!(^RQ7)^7:_S+,5(RQ)I"T<C[3
M2]DM,KG+0%E[&"01*OH2>X&]R;'GM%]GYW<6TY_;>394N.5]Y<0^OK>_X_@&
M)#@:TO*''0NBSRAZOF.M.79W)LBG^$*]9:^GT@IBD6Z<)6,W#!.#O&2+P["\
M[,9@X77^TN>1HC_P6&XZYF''<M,K*<T+06A9SHOW+I/&$[$!,O522=XG11C9
M>)@[=(49\\;<8^_"/]Z/36]N&:_O3)NV0S]Z+]87AB&^@H3 R+"$T4?TQ[\6
M]M)@T.AT-329?!?^;QR^6%A3#3C>V]7/]7ZCC0V@4KYJ-K2"GW=:[4*_R-J4
MUFGT^EVYJ1IO:K#^Y6^)1CF= B<@E]&DBD6)^ZZI:,!);[=Z3-=6GM/G/_')
M]RO.TS)W<<;:CTNU$EYJ<I&.4S:_HK#VE-M82D>](R)1Y(\K!#X4>)G .[R[
MF@Y;M!H4,AN4KXEXB_('9E@O.90'@F[\F- +%&6>^PJ98 H"XGT-J/;_\JC1
M-Y?R2[&5!K^%^TK.'S=%/J.-A+ODU?9TR9>H65N@ZVU!M \8UX*T'Q+95KP#
MWGWL@I/IZZ40>)7 7!523D(RZ3\L0_&H\(L6.*B(J@'VPMCZFQQX*H8-88*?
MF-P(PV9O<DN'/4.M8H34J@ A504DCXYO6$<T/RNJ5OJ; @J<GBBPYP2PQ-A[
M4P2*V(SOR74">WPE=C@:,3:9%)4] +<2[\\W7A U>[\F;Y2CNU+#3S34PM Q
M1:3R&R>;H)&DHB(0;"I%9?A!H(BT\\NR#"ITKN1Y7%SU^ <JEF2V.)1L92Y]
M% M.^'283[\2_/46H[^+H6+R26B9?'E.\31-'.ZC#=1.5\M(==H%>RCH"F$Q
M6_M(QCDWQM$KSC@#8!RUU<]*$91\(_GF*'S3JC;?=)L7USU5U[*Z,DF^D7QS
M%+YI5YQOM(MKO:]JG:SZ@4,SS@;'+[P0AHVR;#Z33V4]5=BOGM#_U,&OIN;$
MX#R;61G;A3SHI7.GQV&*P2U52%=$J%T6DVJ=@TDUQ&K.DJB$5-/)_6QJJ^[G
M2NRR(.7OS1(X,X(K1F_=8](;C6*Z^INY3AJIM2ZNJ1))?[^K!I4$5QV"ZU67
MX-J2X&I!< 55:K_B*K53'95ZPI=#@"X+JQVBCF)#YK]@9Y.PE -3D5=+&_9S
M592+*_-&(RK"E56U<Q^Q4?^$N=Y]X-]/",.M(EJA6YI6J$X$[!3IKZ!66#%\
ML<T4_'542LRA+7I9UQCYE86DP^K(P<.9PZ507__D+M$D"1[./MY5%0^JIHI/
M..B+\Q+A[=A>X8F:8-EA*:R'B%W,HI=1X%(Y<I"3(]?7H_*>%Y_M&)._ R)Y
M,[85WNKA[)UN5P8^3H:*].;>J2BWY.YI,K1V@A26-U?R$!2F2PH[00K+FU18
MIB9L54D3GG!$-F%A8DL0LC 7VXK(X.M^N"IORN$AY'9YEVXRIE ="LN;G'<(
M"NM("JL%A14+X.LK-TB; OAEV@C=BVN]N9K9*6/PM22EPG=!99)2KR*D=%ZQ
MS'4-[LJS0J5OMX;K\EY]'<)&Z,OHP0E26-Z;K4-06'EW5Y+"JD-A1[BIZ3>Q
ML&CG\F])196AHM;^;VI6J4BK$A6=<)0SO2D)3I ]<CN2Q09!+<#:V G0' X!
MD:\#SBD5R)8%DMH+I(HW0>EC%9K:U':^I"D7[Q4M9Y>,+AD]B]&/VK1EK</4
M+Z_\3W*YY/*SYO**MYCIMR^N^VJW5U:+&<GHDM'/D]$KWA.GW[FX'JC=_@G8
M[12Q>$MC4TYY4$M';W3;Q>9S'&#21ZO1Z1]P4RD2?>M.0I4\8/Y-K1_Z<H .
MS5@XO/3<4?HPES-?I;T@\23XMAJA(H>GG.#PE#);M=4:7W)"B)P0LF_.J.V0
M"#DWHQIS,Q)F146%;;WF9ASY=GK=R PY+$/V8([B38?KXK1=O*E[<:TU5:W3
M/L'*C_*"$9():\V$AVOANAT3]FB 0%,.$)!\4RF^.5SKK>WX!GMM]=169927
M'"!PS $"Q]]@O9\Z:'G;,2O;LKMTR<JUDC3'8>N*<JB*P<6UK@X&.VN*"A:%
ME"D=SI9@]U^FE#NO<]"4A7"G1V'MPS:;VRP2!UJU1.)IAH\+M'"2S9M*XK0*
M-=T;E-=TKSK!G8-;'C6CUF*]5=HK%28'[*TR:.%HE0KT5I&"KPQ26BEC."0I
MM2M"2F<3Q]BF0X^,<)1D9%2H?]^@O/Y]%70897BC!&K-FX90IC[ #H"MW@E2
MY-E24=Y[]#*IJ%<E*CK-&$61!BRR]8HLX3RR%*IX5L( LQ):JM8N:P18O8NU
M#YF-)Z6&E!I94N-P,]RVDQH#R@%L2:$A&5TR^BZ,GO<F_SB,WFEB<]*FVCK1
M%@_B3'?!#% ]XO]&#)EV0&!<: *1WO6!'W_HX@L$*):[1PCR:.N-'G6/<#P3
M%W_G,LO 6EW1T4&03^*' DK-^"?&$  2^-D_62G".A#IZ[@1K;/4^C+QWZD;
MP_&)70W!F_YQ94Q@A^\,Z\5X]1!%R98;IGVU!+CE,V<#G_]W"9FA\NIT@<]"
M-A6H7^;+#<&"&WN<J)]."1W  W>.[2YPX2-2WB.\Y#?+&?V(60Q>QH#QYH@]
M%UAT$]$E2?ZOP//-R2O_R+2QSOM=JQL1YHY8UYJYT!Z=6IE@@?\S%?C/D@7^
MPU?ZE*-A:C(7FR:\*H:'/CMU4.#21+11Z"@&N/,?V0CO!=R%K]J*X3+\X<2Q
M+.?%>Y?)=4L]6](8X^ =6_J=5M&.+>UN0QL4[1&2W3M$+Z=W2*?1:_7.?%-[
M\!5S''!01L>6RAJ2Z4;%FI/4J:7 /H\\J.:1:]4'I@:0HVX 7&^6WB)AU>1.
ML;JK")0CM\!)0JD*77!J@K4BC7#JH];2S_H1#'S7S)O;<CKB:J$Y6J=TB97:
MU*4FY%_C3D+U@G"K6-^779MK[=Q7Y^C0W7=KG>/7CM;[J9+2.BA^VJZB$YC(
M\  B>_"!P@QW#.::/S6#F>Q<))L_+-^C]#;DM]Y2#?5#5$+]Z?G.+'P54O*0
MFAI<7$K2KS[I:YT-I9JET'[KY&C_D)D^DH_JP$<;"C$W\]&ZLH=.LUVUVLH#
M51Y%:,^ZU6R5=5V9CRCN_2ESP; ,;4QOZ>I8UAR58Y)M2+\O12UU2AHT),LV
MJD(V6F?#"+M=Q7!75I_)ZK.U!+A2EKP'P=6KEN"2$;LZ1.QVMK0&![.T]/BR
MNAQ+:U_IUS+W>CMXU%W*'R)HTC_@=+QJ5TA4\/>E7I;FWDNA,8/'3UD%QFHT
M.7,5R5G5^XV>7MZ\N_27;),>JA7+-)6;JM:F]/5+U2=+2":_;GOD^IY%CFH\
MNQ1=1>;HUB]'M^Z03N;5\KN.^S*'3)XI)&6&\H[2NM-(=6FJ<')>9I@^PUFF
M*9>>IGPZ4-$E5"J><*UK-=!&59EE6I>,X'\Z8]/X(?. 91+72M+)(>YN!Q?7
M6E]M#5H5R>.2M"]IGQ(7#I $KS4E\4OBKR+Q;^@9O6/:F*95+7M7$KXD?"+\
MG?-LUQ-^Y48"E92V7A=GIY3R1YEPG.TR[*PX<EA-5#ZE=7=NEUK!E.,S)1NM
MLZ&Q=RETTY9T<W)TLZ&U\Z[Z^J2GZYPMT6QH$[PKT52N**8J&?,UKDT\L]F#
MA6R^0^AN*O'I#,IJD5^!>,&YDPV@;;]BN%\U7UL230E$LW-?@1S"!N^DU%9?
M"IL3HIN="Z$WTXW>I#DNVLYUJ(>)[1V_DK/>3Y49.J79 %6*G>J+L=-<2:Y%
MG-!-OSGI*3]ZL8N6DD%2+5&N%Q;E![  =.WB6N^K6F=UI/EV'GP-1G(5ZX@A
M?Y_W]SD&):V=OA-]N2,GQN-G:)UWI@^4,MK(G)S2@%4<EP;.O(,C,Q>?$@&6
MC-UNF.)TU!$[CU.6&*Y#M44CPYNJB@OJ#C""M37\ V,T AS['GPS8B;5*R0^
MG!NOT2=N #^RXOH:5?&FCNM?^<R=*<#=KO,"9.'1+![+L9_X%V,V]!5C/G>=
MGR"*?*8 1&%?(\-U7^%QQ9C1FQK* V/*G0,/=)0K!=U:O?G^"R[SB,M\I&5@
M91[R^BUZ'3VIO:>"H$G@TK=@QXP"SP-<-I8"8JGSNE DFFUMW&-=UFFV^T9[
M.(;_M%HCK=V9M%J]WF!L_$^W?;&^!%O34V<M[0GO*RG5A/>[^\=;I4_@TP H
MQ896W1JNC2#]QMR'J>&FS)[2=:ZK 'YL?..+SZY6)E+=W3XJG^\^W'^]5;[=
M?E<>_NOF^^WJ\+1UC),&PC2&*W3 A]&4C0.+W4_^)*#!&4"I&$\,?C]D[OV$
MCITU>$MOK0S>2I\8QD&RX4S''<%%\H$F8B$/FL"TR/^)@8 H,8"7E!<!*,7@
MD%)L A4)%&<V@P<]@IGB!+Z'J0>XWHOI3^G7\</BJ<"#I2@QG>'OYX%/;R,!
M93-,8(!/&8[E#I='GA=_,K![0)YAH@,M=_*SO+JM1E/OEU,.WVVTN^MG016I
MT2]I A=LJK?QY75TC=?:6+6:O?0X=4$Q?X7GIIYR"^)J3%(XFM21PVW>*X0K
MX/VF RYWJX+J%AKE.VC.42TE5@AG%KV= "CSE)/61OS5E3D'-6#.JE0!EM%E
M<,$8OFHW.H=-H[B+S-05<S?3R-V0:7$.MU <*"O1R_7!R[6>UWT,7QR!/"H<
MU<0$R):NMCI5N:&2-YMET-2&=+;]TE0'::JIMCO5KF&KO%&P^W7AJI8X/B7?
M>%XP X6!]X@8^P EPNA^1C%>#'><?:UX#KFIY6F(CZ85P&<K+'TSQG@:7N 6
MYNLNYL"TF[V*I+#*O.=C:8H]T%8/::LZ_=I/1F.<K LB"%(9<UK<B\.Q_15]
MKJ23>@J,[=R5+)%16%#TT;ALJ;W.SFJH="37P-V1%%V:LU0:10^X"Z[I9;E+
M5:3HBJC.U:2;Q>R&E#2<<#U!86V]T4,_:NYX)B6_N,PRL--JW-']UT7%*?#0
MC']B# 'D0#R9/TF[?SU8YAT.H5S0G(G_%LC^Z$79'U,WMB&>V-709<:/*V,"
MQWIG6"_&JX?H25Y&F_;5$K27 96=W[ IX>3PV26#+;-+'M@3FM+?V=QQT5/^
M:'HCR\%.T:NI%JWF:IY)J[F:9_+Y[N,?#X_?_UMYN/W]Z^W=X\/>DDS2TCQH
M1]7)^?J3*3/#1B/2"5S%F3-7Y%;X4Q"K3U,E6X]PU*PUC3[??5K&:*@Z[OFK
M[">!8F]!9\!Q1J@W7D!*>\R.5$8SQC9 T7]Q5M2%(O;EO5,^.+.YQ6C7GZS
M''O*/XS9_+WRS77&P<CWE(_FLXD)7Y0O\J<!S"B>^&0Y+ZA:E ?F/E,SZ?#1
M1H&\OBW3C)9I_K/- 0-O_^U5?)E"_?I*HE%5:.PAF($ @A^,E8EI&_;(I(E-
MT:D0-"-&:624XS,,/%C#\R)44JZ1)W*/O-4,GD,GYFPYL:33;;0ZW5*28 :-
M?K=JLT_ZC>Z@<]Y[*M.<RWF^7K.4>26;&MO6( \B)>FHK!$2]0)$E&:EK&39
ME#-'(W=51A6AL\DJV"4KJ8R4I/PU+U6$[EHKJIZ@S1L</I##FD75[AQ+45C^
M9AZ[0KK4X78GRQ TJ6<?BJB.M+Q3^EE,T(>^ 3H8L7QGS\P.V"ZY(94H[4T_
M78U[J*8?J%BKA0UMXP7N/[G.[ /\$M?\T_2G'P(/3L7<S_;("NB"V?/ -V;C
M1^-GT3![JW5Q/6BI36VUA4>(FH/=3U0I"^JT&QI+9DQAQ@UM[ _!C.V+ZVY;
MU71=,J-DQK-FQ@W=D7=FQK4-T5IKFIE*1CS&\'/)U"? U,?7KYBJV^FI6GLU
MH?),^+JDW/I*-8D2T2[/QZ3Y.8_9*A[@GO<0\3:%&L\ARWD;]Q-!>C_YW7'&
MWHT]#B.V#XXU+LQXO8OK3EMM:9U*)S++)/DR':82R:</Y--4]=VK\23Y5(=\
M-ICX><EGO24_J%J'^3))I\R+EW,EPT/)L#9.,&RVU4ZW*CKP!*Y,TO'_D<U=
MP ,EDJG8& [V\S=/*T-[$%O0L;4#Y\^A0+J(0>C[YKLD4.%OGBYQDX M\,=-
M"-G"S(%=1%6M5U;Q2I6B'V=+3!GFX?Z)2;^X[JK]OFS=<$+$E&$L;D%,J_2"
M5Z#M$R260YF'ITQXQY)A;:!)5>MH%2'+DPT;?I[-#=/E)05H'#K4^'<T-=PG
M&3$L'#&,H7D_P9[+7\QG-L: O>_]%[/&GQSW#X\5<-_;<JK@*5+1AL!A3BI:
MI9;NQ74G)9%)4DIM*65#C+!T>=,[97DCPX7[#A=N+;GZ59)<<AI6!9Z22*C
M4R<;(O^=V<PU+!X/'\],V_1\E_IU*.SGG-G>2L'!V4<"-OD^ J3H]2\ ]);#
MLW $8(!1S&Z_VLU"912S3,>G9!+J-,&J4'NMG2\<)0E5AX0V>$1EDY!V<:UI
M:@^;'YT<#<GX^+[]H;*I4;^XUMNJUJK*;<WIAL6QP)=YOG+))VF]"<U"%<=K
MG4-<_++<P+B YV>"IB#_.^:G$7D+1>ZJSGY3Y]#3^1+&IEAW <)H7URO)LA(
MLJ@&6>QHQ7FP:_@K/WD4U)R=B^NVVF_O;,95D(AD6+M\,V[?Y-A%<NSI.]MQ
M,N)].D^=;+"5CYHNSY*NF3]9KB5-P+QS;"=L%KL@B])D30_,)FVP@^%4P=#%
M"9''CN9TAJ;:1"8%]54?T_&ZE8D[2%(ZH U>7.(,P+HYQ5(&&3 ]F*5=KOSJ
M-B^N^^J@N]I7Z#SBIE%/]I+I(;TI!CA$"C?VE$O+\;PWRI !OICB&S\32<4+
MW3@WG3Q?:\>3:'U2[,1U;XJR.7*,A/0%R"CLC&+: 9S^/IK+\!L1%W_N$2GL
M]J?O&@ ]TS;<U\\^FWD@2/"UKF-9)$JX%U]8BF@7UZVFVDTITZMZ]Y1"-'6D
M@)84 :<C G:]),B,OU5'&.AH4O3[JTFKA6\D)%=*KJPB5^:_I*D.5^+E<5?M
M-5?3!D^++<OT226+GPZ+EUG,42&V;F,F9[._>GU[]H:W""6$.PCWRL<NIXN
M!7D"?-M;)U5R"I\3>*S,N[V55Y[ Y5[&E!5C;OJ&Q6_UQJ8?N*MUXSL'.JMQ
MU//N7KLI4//->*4V H_.S>C?@>DR,3W*?&:\ K"PT._@!&2UWUZUY:HN]:MS
M=R%9[Q18;T,29?FL1_E)S>[J?:_D/,EYY\1Y&\J-<G#>*G/U@+E6\W$D9\G!
M"I)+]Q#'*%\[]L$P[:F#3OW"$>7F+\B@0ZV##NO3XLYDOG-](R\T1E4Q2(05
M%0!G%-(O=N*ZJT+PW-8JPRTUWN#BNJ7UU7Z[MF,RCW^;EWLC1;Q(R<BGRLB]
M?3!R#Z<P='6UE3*%03*R9&3)R.4S<G\OC(R-:5JZVN_5=E9N31GYD-$G*11.
M5"@T]R(3</"'UE:;?:G<2P]952QN)(-5]0U6/4Y=QI2O\-S44V[M,1L7"5B=
M$" 6HG;MTH"04/EYQ4D5H?/!F8FI*LHG*S#'GO(/8S9_KXCKB^SI'$7.GP^
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
M[SB@]6#'_#V1,IOM=!4[:)4YI:VK@V;EI64Z]1QU%-@)T4!+4[561]+ .=.
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
M882Y_1,D )0D,2J:.EX@W7N9O(YJIVRU)6OB.\4X!<)1]0N\?#Q&M0R/XWX
MWHH@E4320R9T& FX@+1QQ8SL6>48S;7S105.VL_17B,)M*F/:7:K5A^S7JGL
M58> I2CYQ$)&N17:XY*;>3%JD/D.!?,\*'@&R*6Y1:3US8*>"2G8=8MIXUIW
MD"^.)3=#W(YE><B1!+KR$ZA:![H^Y34 BPZ^ME?N\>Z58\]>-.S!8EB',KJE
M<B1[F\WYG31&0+F'V%U#\V >.?%E&"R/I^H1""K\*M@G8SY"\]#3/#K!K2S@
MDNT6WY<YP6C@PMNO$ZQ@HIT+V9)L%!5A*VYR9"\.N<\#G:B>Q9&5&5D6/Z8)
M%0HFAEG>OE4LG"A<]>(XE=^ %1,$SZVVM"'8N&*41K+4E"[*4C8MG?D2Y_OP
M!&RM. ;-[M_)4)4.'2S'G O.S,+N%5 T!MWKB"HI,#3V'6RNOZ1YEA=ZJ%6%
M 4:X>"*X\:(PH#!=#87@'45;UX4M2@M!+""/R&LW5,@"2SC.[R_A*,0P< 7Q
M#61T+9Q:O,NJ<HAA9>G)<>A-N1[7A1J0WU0-R!6(6 V9!UQZS3M(QP*WY'J*
MK,AQJ@S1@HK():KHSTD=0RIG@G8I\02>6J$5FWFI,NZ)=Q9>> .R'!94.H4<
M]/AD1>R84=6!U-@MQR)E+G=XY8I*4UWY%@47#*.&6(G)(Y=]4,$6*NER[,;"
M!F!)71B$#(U_BB>J6BY=7D8!3>7EHYH) Y%H->.I[I+QL<71"X2XE2I[SB.Y
M (50":RRC"^MK/64RP@!!6>5=P,C)O]![A$PEW"N69&/9%QKX1&YCPIEHY%/
ME07.5%PU\[[5%@I_W0ITU>.BEIR#YH)]MQA^LK16^QC^04%M,5'6P!7H#1AD
MX'%[=5KBNXA&Y/?C28L:_W((JVQ@<-NG41(.0:%TB8U;-OOZ]NL7@I/ P5&M
M.*X$:]J='UD4WG%?AI5DW%PA)Q4.(/124"'ERDC5XA7NEY]38\8P/#@92S(G
M;]%G3 4*EH;7%;Z"]'IC32+AYI^4=KH:"NF%E7%*,GCJS. &[D+WOHY;,ZSD
M1S#4@+9-J40]GR*E,!_PSF.L<)T*?\R^ *N!AI&;=K9I(J7QT(-=G[<D1]&!
MR-LK'<)%[07[E$^'_>"EBQ$%7V%-U8TV^YQ&:*0EDEA>3%R=?2K6GZ+14:B%
M7*5<M<4H.F30@5Y6-EYNVI', 3GAMQE*,D6#1X5813I7205DW4TPL+ET#YK,
M(U+7+V -\\):@M:0JU,^9&V^2>L:HYE4'ER0\6(L5@GD!/B,&#>7_]Q_(*FY
ME;8U[?D)_R9D;%!M+:,PT$?3L)'-/%J5Q4+D[!9ZC=H7Z\B[UQ*/9B$.+6WN
M81:_=:UE?HDXJ$+P3$9YZ@%X7V$ZD<RK70:*AN=O7L]@N(@YH8<*MH%"MP&P
M@HZT1QBS!@;QB^:]^KX*BNGR[H0 $VZENZ""[AA SV\'+X9D20$\Q$G1(Z1
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
M/%8K!$HM4(18>OG%\B#@=RKQU 6$JZ"!:(PLFF[%!5QZ"-^%K\Z.<>2 I%5
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
MR.U;5F&_N.@K4_P='Q\>''S*%1B[*O[0^_2OMYY :=SN\2CX94&2"+.&2*Y
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
MF90L4P"-+*'-3!?/F7?1,1>M22"#Y:5U3+T[ZGV*O_>>M&UT_X"<?8?UNHO
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
M+(I;,B:66C=R@1G!!&XK*AB<IG8(+R;4Y21L]DKDL"D!:2^F-T-Z^>Q7%/D
MZ_D\;0:ZV0I.]I S6A D<29*I&8D5CA# BN'7 (09>WCGWL07CSC?40ZQ$J.
M(NC>-^4$X6SZTQ\E(^YJW%V4^9[E-Q!FHZA4!*\L\31[(@V7.$_\*P.C:40M
M-&)3^>&]WOJG0+UX+:@K]HJU$E< SV87T/[23)M%*,OTO-3SN[Q>EZC"'0K*
M";>G@#M54L2F'(BU.6J;F "H'9NQ&=&+UXB* J]8,/%FU2I@BL*N3B/'TRL$
M>1/I]"/DIH7%]S[[/Z!#K6X]CC^>^O;;7#XXNQ(O@D*>S.>W6 A'*65!=4G6
MBZ6(B>3ER-(&XAW$I((0!FI?"@XXG1>OB,^%ZHKE'^].#2$OWZH?T?HJ=K</
M,J3@,J$NH6V5'<=5UUIBM#+!1L\$JWUO^0B4$]&>?B*N6 QR!>L7F-WH-2ZF
M$(TUAHC@BQKZ$E5E'-%6>L^Y+"5)*_-]!\"+9WE_<58L ;D"\Y-OI[C(=!^@
MG6< _^B[<;P^=A'>6^Y$24=)Z$$!NM,^AT""-ME9,"!X[08X&P&]>.[KB;MF
M?<B-Z$;4&^.M .(2+S5[1 FK0CLJ<P],1I5R]9:':X$<GOR*;&VC!SM)>H"[
MR+]#:?<-Z=57-%;.EV7RSO*#R@ +L *25QXD 5Y> YL<<5FR<F3N?-9:,-A4
M-6D?M=@)X(M?*X:CHV:5T<<T^LUX<E7 K]X6'JP306AB14EF5>5R)02%SKDV
MP"Q/T6Y*^:ZQBMR#].(5I*;(:Y8L?0+?B ;-C$B"**-*WQF$Y#0WI< YAV0@
MNWP@53C^EM*+L^WT82=Y'VY;6:)[6'=&<6<,M9&8.$^S0Z1>&D8HI4DQ8:Q,
MM8_'=H3XXE>.(2EYO%3N\)F/3?[I'U>ECL+J@[N@]L]^?/C@H3(@GYC"<%F0
M("1S*4<T(,K]J6".A(Q+A>'*L03* :\=83)X%B3ZU'2>>BW\W$1G$5?3%(DU
MD/#=D<'$ZC'USR4+<A<^G\B"W$6,Q\Z"?#"%Q>M4"FPTTY)A/$\52D 5C4P0
M8V3$!4V7&6F*LBJ6L_$A5(^[V CHF>1)[D3T8SK36^ #V"#W,"U33;8!M4O2
MY"X&Z3I ATV>'("X^P9I-:D?3"4T6$>CL<2F<E7H/">!>DL*X$Q=8"K6OK _
MH"H\DE%Y+$W81=B#Q-[?[T5/6<(5+BMBL\A$>HK6-16*Y,"%!,JM"YL*I.P7
M<7D/Q!%\TO[D/ BY["/9 =*T7J4T%Z*??/#C]&[ZVG\9S_QDU7Q>Q104X+;'
M6"YY1I)8QR1!UX8KZZ-AU:V!C8!.007J27R -_]S"[Z[:K_--72AK$M@.LKB
M"Y:F,"$4KYHC,,$)2\(''7E(&QMW[*,*CX(Y!36H(^DA\BQBO+J\FA3?>]X8
M>[+(!$G_YZJ;E2UPA3)8 <ZB,6Q$:;P): QSG@AX"A"4X4'7M@>V0W8*RC$
M!P/$\;YJXKB$');K^A)=N.QI,H;NU5<_GA3'Z6W3?O(3* FFKR:3YG<_C>6S
MURW@(EC^W0??WLR'4J6L!D6 ^K",3K0T%@EZ;4W -Z#Z=E-Y#B>A?<?D=8!H
MY(\PP]E 6ET#K*H@9*85YR@36:+@I5/E[0$B7!:IQ,G2ZHD'ZY&<@LY4D/$
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
MB0>^SICY\:I#"77=ZGID?EU+M4".LR6"6719#)H@OH18F"2],\R#D/7KRFP
M=+S8DUJT/U:&N[?X![@[6&*YOJ5]&LQ  ;EW@!RY['9_HNZK0&\I#TX]BV T
ME/@J'STI81HDR*Q("-J*H*G&9?/E4;YM>>V!&=]%N!69+L=4Q0R?0)'DVPD:
MQ]V'MDE7<=85R[_(:!DRD;WT2:*Y'\K!A63*$ M6D*PX#YEE[\$\87]N/]H1
MDD;WIZ,95):5@P[^COK<OITTOP<??UNF-J_"9 UC+B=KB')0&EE!(,XR2R+E
ME%)=>INR+2C>,,1+Y;66U"K'H%VO3C]#<][Z+Q?H"D\6(7:X%EG!.(F\!+,
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
MZ$;%Z4_'X,O-78A&,9<#OC-HR7@B'=<D..9)5DE(C@LLT.K%9@^M*4_8>L]
M479A8<"HXTTWD$SD* QS!%2YL_9>$6_!$JH21(JF$=NNK<1+OPNN1N,>M\"[
M<#!$R #.=/:MV%%+/"%D'W.R1$9=$JVD)%9Z-(V#"C(S%MUV#2MVT8E[&$Y(
M ?I(M^*BD& \>@_G?O(3SG&V6/>2TSX+F0F$>=2]IR3PP$DV@7,5&?K!FVJ
M=!"_/V^^_H"/7G",/]Q0NV; $S L^XJQ8G'' F6!8G72M 6.+<S$IVF]/>IA
MK<#>XF\JRJ[RVWD'C] Y>:HL<1F]6*F-)=Y83:P+AAI!@W2;UN#GP.$C]ME@
M%.XBLLJ'</>N;K373&B)5J36:$^""L0#.**2,\X:!<YNTTSS6!=@_23[^(W6
M+F*IW-3IIK48I,"$Q?6>\2S1V J).(MSR?@+P9W+9KNJ<<^]JV'%/6]_ 5:L
M:'N_5=4V,$ZOL>%.PG^D,=X^DANPL6'(N?3L8<2E@'!HZ3GF<:W1BN?2<]5H
MLU5DTK$)W*JQ80W^=A'8H(T-I;74,W2&E"ZMK%46Q"?#"8U&29H\I.V*]+R,
MQH8[B?W1QH:[R&S0QH9&ZYA-=B0QHU 32XER:001/ E-2_T,D#7(>QZ-#?<F
M;V^9#5);:]LR3[?#%Q<-")P4CAII2##!HNT5- G)Y-)6E3D.-FE6._ZS!]QC
M'_]4JYQY*,H&.!;<&OJ;*W@W7=0JQY'/\MMQ%_WD?X/'U2YSHX-4A"4H?IUP
MB_1\46+:H@G.^'@LK7L<]I]/^RI1^ S6O+/IVW';S5Y-I^.OT':^_3:*3/O@
MG",V>$\D*\+S+!*P5@;T:[V[7V#^X$O?0]1_/AVL0^  =9MVG\$G*-^[/84D
M<K:BR(V7OE_1H-V?T7+00:L@@E<F'J]>\*.P_\1*V(_" 2I0[#Z%SQ?C]LX,
M@$6%_YX37^*MI*(EVQ2=3ZT<Q?]WX9A%JQ]#_2?6P5X$#I ]N:,YT4SP0>?%
MB'B+,QC%:$TIO$B"QE='FNA)"%2@SN0H<F V\MJWRKT __D4KS=M%7,4YBUL
MU@5-+)RC[BS_K522&OO)M<1F[\<^E,9)*+GKUDD?H,U->UE>J'FDZ$C0%$Q$
M(7++<1FW($I]!A0LS4XD"3*9K=H-#8#MQ6O<LR!M^-C,G[K9^!(G<I8_X"_&
M80+E"R/ME8W1<T)U0HFIQ(C3#DJ?)/ \,I"\>G?-;8"]>+4:CH8!6FW> _D1
M(HR_EJNW#VT3 5"90PP95T]+J&6*2.H,\3Y1HH5EU@)SRF]U\KJ_GCP$=:HZ
MTE/\E3MRWLDHW9Q0^@:W[,O+<5?NEO [JU7RVT]_?(%I!R-0VCD&F6042FD
M*,LL!$G>*. <\.-MBHC60_3B->B(!#W:Y;-J^[2W?MS^EY]<P=_ EPH&\^J[
MKR_*+<EX>G;5EHK[W:)'V?[MU/88I$)[M;Y3J]1N[1K&JZZ#6;<$D\ZFN Q=
MM6WIY.F[<??KM D=M/-EZ=WTR]7L8SEL*#T__7+J2S6VQCBFA2)1E<KXG#+B
MC8BDN(':>6MHJIVD67D*?7?3.G 6H2\@<9DW:#]2'70Q(H%8BLN#RH9))@/D
M4/OXHR+\0[60.Z8.W]_,C\7^<VE6=SW_'[]=__@?8]R T'/_]AZ^PF0>5&(@
MJTP-(P#EBH:5:VZ.PHY4.9=T5-+6/EG9#MFQ8M^.IC>/Z6\]_@:X8EN[>3[$
MN\J%V +L0+F(.P$]3G;B$(P_IE2#T75T';,V:&I]))K[C.8[&M#>H!^??>;&
M&5"A>J7U9Z!;3^0S/CO5VH6E(55JOG1W<PFP9:!6U""D _2V,J-$2AV(5X&5
MP"^+PK&1LS24 CV$<WC7>$ B'U.9GBP,$,"T#AI?0O/19@4T$X.N.)$&7Q!/
M.2<TX*9NI="9U^Y^O0'.GTU!]F'A0"N(N [U%)PG10DPGU!WH83A24J81C<F
M,LL@'$)!Q)]30?9A88#(GUM;[MR3F-<(7\3Q,Z.9X)* 8I+(A+NLM9Z10'-D
M#%2D<4"7ZRZ8?WI9-5@:4GUZ">CVK%85)K>8U] ^6.4Y'=U=ZZ,Z@QQ;5>)]
MR'VS]OR$EPF'*[Y+]$1FJ8@7U! 1T(,Q3FL7:M^,OBQ]WMY%? GJO O= S7[
M7EX*K>Q1H4+BV9& ]@J1D"4)S#O<CU34/CJM8NU(\0<@CFCJ'97?->V_]R=G
M &_RIW]<C6??/A61S(.55A9JL7"C+^D1*I2>A8RX4O8YLIBYCU$IJ'U4M1[)
MX?6F)T5-=?D.L$9\')]?7$]/."T%<YY %.5HC:,W$H$3KT%0SHR,H7;?I-OC
MOW2&]Y;E *;YZP:GULY*T-@;"+,':I<M3>AYA-*$7I0R"9H$D)K0!) 6QU>U
M=X(G(+UT]FM*?(#TBCJ;X&L_B5>3^8\ECOIMT_[NVS021FF'A!.I2ALQ%5#/
MI>+$^5(\)4N9H78:Y)#S>:DFRG,*2JB@*4,>F=\Z]?O[>';Q8#+=W=G<G?I<
M,//'C(R!Q),'8E+$9=Z5'.:<.0G"LN HR[KZEEE[#B]5VVMHV!;W@P=3CP/=
M2N\YG](!M!OA!&*(5A N2P=S&B)Q*95*GMEJ=+\EA]K55&O/X9_J_CS48\CS
MZ/[S^=SZ:9>A[<ZN9F=Y<6<SDCHQIH,C2FA?&C0GXH!SDM#$9T*D%/A@9LXP
M4_KGR_ LE>=X]O\BIOS=M.14^LGXOR']C*S.\XZDL5%YYPB'4M=7*46<P5F(
MS+02B0(=+@IS7]#_U.\C*<  V=G5C3.E;9*E/U(J):^D0G<I6-#$1J%%L#RK
M?(@HO/ZV^_!9-'_S[6\P^SCN?NO\-+V!=OP5<7V%_X!T#B5'J?6Q>E;-;H,.
ME6738^K#9-V\FJ9;.<5KWF/\PB]-R8F_I3(W1P-.1TW+NYL32"++\F%U3$1+
M)BFC'KP=3.MK3*#R1K@7F&6I6<VMEE&B<Y<,D4)%XBVCA-+,<6W&5237[D%2
M#?R1LFT.J+M/['\'XOV%9=H$GB@W/I7V,&BD!N.)]2$0;JD-C.MLU6#^_4O(
MM#F4UNR79[,+>T?/@=@&[#_S;&HRWBL98A^ZCJYCH*, =+M)Y(DM+F$]UXPX
M&F667@2F!@MR?NEY-H=3K5U8.G">C79@LPR)4%L*DI4*H<5G)-;%9"53WFCZ
MSSR;O8C<(<]F%Q8.G&>C<%>/\^ .7TZ\>9ERLH$P9IU0U"6?#J$@+R3/IK:"
M[,/"@?-LLK?96(UV7FD'(\%HG&V*Q$45:18^^^I5 5]PGDUM!=F'A8H74Z7"
M_J=X >EJ F=Y$0'X-YA=-.DF]NCAIP#7+=Q#TAFGS@GPTIB(&T%P^TTD!YJU
MS(KIL-41PQ--#/I@_'-Z9@=EMK)&/H9K9>EO@:QBXZ'-: [?B^APK#:#4E*Y
M,\X3" $M,^--)IPE53H,)^*"X[@#&PU6V!CX5I6<GJ&R;.A[]!QU91<F*G<)
M_,\FC?UO/_ON$[1?QQ&Z=]/X_2H>NG29CMX3KDK52A,4FFC!D&B#<5E*;_4]
M!5E;SV_#$(=MOE.3A::^""NZ0076IYF?)M_B%CN[&%]=OI^E%2CG+.,EQ=TJ
M62K7ND2"PGFSH/"_E#&M[!:\/CK 2;!:1WR5W]9;X>]GLPMHEXA2Z9\H8TE)
ME^AL^RP)S@Q]*1\3+E12NONWXFL)7?_TDV"S@N &"'Z[GU_T]NLOXY'11EK0
M:%"#*BV6YAEJN-O$H 5.WP.HVE>4ZW </0SGB/>.O7EY="FO&O;Q;IJNNEF+
M0.?WC=W*M&GR\I.WXZF?QK&?O)O.:Y<O:L3N&_#1:[@*H1[UIELIR&,Y[$?X
MTK2EXN^M86_T4-KLF(J6@).F'(_@BL51BZ1EBE,T#J((E5_G;7#U7;INS.@-
MH_VXXFKAM&?-<G Z$)NE)M)121S5EG@F8D SVCI=.XQE#YB'"K.HKCWW5[&A
M*3IVG$0Q%UXWTZZ9C--\+G.1S?TTI[(P$?=UEDJ5+V"X5FOE231>46FHTV:K
MLKI/N+;K1S_6Z=K@?#=5Y5[YL.,AHJ7)N VFBF=CC^$X_*E8#8XV4MY#P(<B
M/W 6,D4WC<X-?%6,-B8E\2"!6AJ<W2Z:X%F1ON%TZU"<[R+7 6[OEAT/IN<K
M6W#ISW&:<6?$>4H'""L )=YI012- -E*%6AM8^L1*(?UFNOPU-07\@!7^Z^;
M%K<U= W0^5LB6P(#:W00(I),#1I+,@GB(^?$B1 =T&"\K9W8^RB8$^"_CJ '
M>/L_S1!4@?/C58>6<M>M%'2^UG$TBC,3CCB;%9'11Q*4921:+4)F7KGJ'24W
M CIU<[ ^*P.<M"VQ+-^*;< ,%,=Z!\AQXE0K$G5?!7I+>8C5X@XH"!*-(4 /
M.F=34CIQ\P*527:)29X0E*M^!C$\Y4^$CQZ*\5V$6_EFY'533C"+)-].KL:I
M^] VZ:HD>8V_CHN,ECM74%&):' !5:5&D"RENU@PA!H*WN+.&-(]?V#M3<EV
MHQW^"+T''<V@LJQ\M_GWTK+S[:3Y/?CXV^K:=158Z*/AVEH2/60B:<(]++!,
M/(V9*J-+_.D6%&\8XJ7R6DMJ0]2T@Z\PO8*W./-5?F;)L7U]U<V:2VBOV]Z5
MJR'\7_KL_Q@IE37W-I%40MXEB$R"0+/%.BL<Q1DP[RLOY7O /)JR#'>P/#19
M@SB-W>PL_]PTJ=PKKG3_4S-)(^IP'0-*"?!2Y(&#(-;@JL:]L]%;%9VI?6;P
M.)H3U)9*HJ]L+[R!+RW$\?*.<+G=O;HL,OCO17OH:7H58SO_?"1DXDGG2'"9
M+&YTC&@L<4NX-$RGE)WS=(L]9:=!3T@5AA7X .[BN\LO?MP689SE]TWII/H5
MTB(LX3]@DMXV[:\=C))G41K+2=+H(TL#% V@C!NGQ$7->&E5KKUR; 7LA#1G
M.$(&J-?S,TRA]9.BR.D29=Z5" 8$NFJ_RQC-T2A+T# 61'I?#&:4A\R!,@I*
M\.K%!YZ =(*:4I.$ 2KBO)NB#0[=#(TDM)66H'Z!V4AQD&B 2\(H^MZESQ"Q
MC%-">8Y9!9:BJVW-/H;E!+6BBM@?JH/JO62@=+I2J0FZL^E/?Y2Y7XV[B\5"
M5VH2CPPUWLAR$*N5+%UHT-F+61.N1=0N.F%C[>/L)T&=H(+4)>*AINC>5YXE
M;/679MJL;N7NJ/+(I6 52$N83.B_JWGJ-WCB5%;>RLPBJUT<?#.B$]21BA0\
M5!#3?V<I8(H*KQSS\?0*02ZO<9MI]R.@0&#Q/?3)H4,];SV./Y[Z]MM</CB[
M$J6%8I_,Y[=8-4=*@!74 0F6<R*US<1E0'-<&9.H"CG'VBG3 T[G!%7SN9#_
M4*]M7[W^X+_-[RH^-Z_B/Z[&+2R/H]&F6S@ (V.!,8#23S:A(<<$$ 2,'J/V
MP+D,.<3:?MB3H$Y0Q^H2\5!37%]-6:)(7M 4@R7"JGG5UD@"&O9$.&U#HM%J
M6;L@ULEROH=(UQS4;4Y^6'Y<_@B^@W__E_\+4$L#!!0    ( '6(G5IV5]5S
M7<   &!#!P 4    ='1I+3(P,C4P,S,Q7VQA8BYX;6S4O7MSXSB2+_K_?@K<
MV1/G]$0(TWR K]G'"7<]9AVWNNQ3Y>XY&QTW%'C:W)9)+TFYR_OI+T!2$F5)
M% "!=.W&3E>5#2(S?V0F$D ^_OE_?WM<@6=>U7E9_,N?_+]X?P*\H"7+B_M_
M^=,O=Q]A^J?__:__\ ___/] ^']_^O()O"_I^I$7#7A7<=QP!O[(FP?0/'#P
M][+Z/7_&X':%&U%6CQ#^:_O8N_+II<KO'QH0>$&T&;;Y;?77T&=^FHH0\L@+
M(!(I@BE',62,($%]$48>7MS_-4QP) )$(1&40D0)@UF$.20D2%@<<D$1:R==
MY<7O?U7_(;CF0(I7U.T__^5/#TWS]-<??_SCCS_^\HU4J[^4U?V/@>>%/VY&
M_ZD?_NU@_!]A.]K/LNS']K?;H75^;*"<UO_Q__[\Z2M]X(\8YD7=X((J G7^
MU[K]X:>2XJ9%_2Q?X.0(]2^X&0;5CZ ?P-#_R[>:_>E?_P& #HZJ7/$O7 #U
MYR]?KD^2S'Y4(WXL^+UZM[>\RDOVM<%5\PD3OI+<M[,U+T_\7_Y4YX]/*[[Y
MV4/%Q?%I5U6U-ZOB,E-<^K'B\A]/$?OQ O8=\=L<\NJ N5;<SZYX',/TLS-V
M[Z2%X-,S/"!S,<O=!_6A8'-]NUM2%[,^/<>N/HNRP:L9/HL=F0'+*_6#3_)O
M/1DUT8@Q;>GTIGO *O_6\(+QSEKN30UR]B]_DG];KFMXC_'3\FM3TM^OGIXJ
M3O/6=']1RUK]]>K+UY_Y(^'5LME^OTM>P%^^;DBU\QE.]B<#L9H3ZEGQNEQ7
MM%O8)!=J4>\8^]>6/A@R #H.P ^2A_K/__SCCG,7T*SF1V7E%!#P6\?!_W<2
MF9+NT5JI!;ZL7DM;4G-I=QI42W%;406N22MO/YF4.PA_Y*NFWOP$JI^T:J1/
M[\>#5WU5;:3"%3V#>C_B1UI*7^>I@7LO0%3EHZ7X36GYE70O0K+U)U!6C%?2
MPSTBXL'7_"NN<DRD093&YWWYB/-BF85>E'(1013[/D0<!3 EJ8!AF/F)CVF(
M@\A$_0])3*SO&X) 402_=31/?\NZN.BI]672FNFQH:#&2GM:%D=:>H3 K&IY
M6L#7>C@RTDSQ.&7+6_SR:RT]*;5W5'NE]WE-5V6]KKA<X_EUPQ_K,U^;YBS3
M?7J2.'BNP8 \V-$'ORD.0,N"@\_14-@CWV;-Z5_NR^<?Y4S]9TG9[FO4G7^6
M3]-0V,UW:OJ8V4=;5\WRBWS]O/=PB!>1F*8$QEPN#(B@$*9)ZDE(&?$2C#TF
M/)TEXM6\D_N!<@6MFYSB%?B98P5,>[YCMD*\QF)<42^0T-2GLQ1.6PU/B#*V
M%,A'!LN _-=.Z5[/-HMRG1!AHT2G?FVF+$V3+Z^+O,GQZJ>R8'7_G8B$<)_B
M ":)ETC?*@TACAB%@O"492)"D1?HZ,SQZ2=6G9X@:"GJZ<D)&,;5Y7+AS+1F
M3Z[SVQX= 5E_;-QZZQ,*ND?'\8O4M@GC8G2F08Y1:A]Y87=8^X\G'IK% HPS
MO#$$9T;9;;74(GPCWE6<Y<U'3/-5WKS\C+_EC^O'G\JJ*O_(B_MW^$G^IGE9
MBI2'7A G,.!)")$?89@1:3)2'V<9CM4JZYMLPDR(3VQ+>K* ;.@"VA,VVZ(9
MX:FW>9L*)3.CU#K/I0 ='V##R )LD-OR MZ=0\YXSV<#@:/=H!'I6?>)-J"\
MWD%:S6%G::X+6DD7D+_GW9_7Q<T3K^1"T5+(&[RZ(G538=HL41JQ*!84,I_Z
M$$FK DF8(>AA$C 1,\_GPL3.Z).>V,J\>U".7 WR I0;#@"N:][4 !<,K.1V
M7KV#G-=_-;,[!NCJ69UI,#-UA#K:X(<-%W]6T&T9 3TGX+<-+P[/F<P!<&1Q
M# C/:F_, 7EM;2QF,#_'^J5@U>KE_BNGZTI9L]^;VRJG_-U#<7\KOWX-LW%^
MEHG-A"3.)77UA6\8D,ML]3MO0,L%Z.R(GH70P.3\L9X[.,PL@"82"W7F1^6^
MP\VYGIZT5D=Z9Z:>[31/3\3A09[F$W;.P=<'7/&?I$E@[\K')U[4[0;RJJK4
MVU4;ROJGE]V86_RB?G;U!ZY8^Y\[2?6J8+?RV_F,'S=W(R:WP1/0G]A(7*U6
MH"4.%'7-\X])\=9S+-X::C,#M$-X@JNL*:%P=64]!8OSWG)/"/+!Q?B4M.PL
MZT><5[_BU9H/SM__GC</OQ0EJ7GUK.X/KXNG=5-_X0I1N?WHKO25G:_DPBM9
MS>LKM4?YBE>\7D:AR!"*",0DD9LSGV"(,6,P0B&-<<B9W*,M#^+)SIH%UWQJ
MF02](+NQ"PY)2IV*Y,4SKYOV#9L98N>O1\\(OPG:5@98<0I:5A=[5TAMW/.0
M7=#Q"_897H MRZ#E>0%:KA>@Y=N=+9\*44=VW#E[L]KPJ<!];;\GHV.^C6T7
MA+_)A:-Y+VW3EC'=_>N)QR?V27?*"G"M[&++ 5 LZ&]63TE^?I?J0&@;[W G
M)-@!X&8G>D8BJRWHJ3EGVWN>$6JXZ3PWU#QBY,-_KM7NE3</);MN5VW.!WN8
M*$J\., >1#Q*(8J0![.8$TB25/V""9%H'3V?)S7YY?C&(UD 1=0BH.0,5./Z
MZ!8 TW-C4]F-XDWTQ+H@!.4,@=FB4O0$'0:J:#YAMY79G!$SEJM%=Q/;P%GL
MQ1Y#T$L" 5'"4ZFR20(9$SQ,,I%E*#8Y"SI.9NJ;H?XF8T,5W,J!#^KN0^XD
M'W.;K<4)N/0V")>#8*:R6O)/D (P+J<CY_L$D5E=Z'%!7SO"9T;;Z>][3II=
M^.<=_];\)#G\?>FCD!)$*<29%TD%CE406I;!A,1^D(5<JK56$-H9.A-K\*>R
MN(=WO'H$BGY[G7O3//!J%QAAJ+^GX-)38 <@F&EP*_4PW%K1!"U1A_IZ1BQ'
M"GN*RJP:>T;4URI[;KCEQ4PC_6YE?&]$F_7S4*[DPW6WSF]#"EB,,8DS"E'(
M$419$L-,4 ^*E L/LS0B86J6G*=!=6)]WO*@]K%#+OX7Z/C0B3JX %/-VQ37
M2)DIO1.0+/+V#(1VEKNG0W/F_#T#& YS^$P>MC,>'X3@5!+X\(VVU_0J3^FF
M>(?K!_4_1>H9KY1C]T5N%*J<-IRI7UP5;/\'@Y%+00@->1S D*M=.@D\2%(:
M0^IS0OU,A%&&34S-!#Q.;)@ZCI7"\9YG4*FS)]H'ETGGF4J&S&S2%*]*SX*]
M\0LPLW<[[#?L=FF.$G/%PZ+]+QBPHNX?-ESV0Y1G^.J'^T^\*XLF+];JRJ*/
MCY(>N#OK.2'@CFSM%!S.:IDGA/BU'9^2E'F*D71 G\H:K_Y6E>NGZX*NUJJ2
MD7)+NV^:L^T7_9Y3M;.O5>4C.>93'_KZ\N&;NCCG2Y9EB)(@@I2%OG0L4=3M
M"@4.@B!, H]%R?*95Z3424YRQYB)<1FR9["1VJ,OK7Q+%V!**\FG?AZ0PY>!
M,QQD08PAPYFZ](\SF"6>!_T$9X'PY*(<$]T\L;=Y%3815AW@VZCL%U#Q55MT
MJRE!25;Y?<ODF[R0\;7U[6 V/#/H>00MDPNP91,,^=RM@@OP6CFVO(*>V3=Y
M&_KI=6_S5NS2\N9\.T;)?>Y!'$D*=$ALMF1"]P -DQ GF-WV0%GPJN),\E ^
M\CO\[=,N?^8S;Y:8IHD(?0P#GP40<4%ABE/Y-\JY1S*,.--:M33I3;P<;:B#
MO"4/&OS--.SW'&"Z1\O.8# ]8NX1Z"@#21H,:"^ I.[RJ%E+3&='SN/49CYZ
MUA+]\ A:[S'S:*B?BZ=<&9B[_)&SCV6EPFM_Q:N/*WRO&Q$U,L7$BOOSY]OK
MX<U(RP$0906&4<)GPH:,(!G78X=HF.FO"1#@-\6+HT(]&M):A5*-S3M;.)6&
M<,.0*IWAEG=%_%XYF5_X4UFIG+[M509)0^HCDD A$@\BG"4P94Q E,6,$S\(
MHLSL>N@$H:EOA#JR8$O7_@;H%%*:ESX.Y#>\Y[$1W?Q>YXQ<KJYR3I&9]_;F
MC+ '%S;GQK]Y?LA=A8M:>@#US;JY$9_X,U^%RR#& 9-J#IG/,40>X1"'6$#N
M\="G-(X"812=-3&_$YL0R<4*R]V0R+OBXX#PY@_."]!2!T%[.=#]/01"!1,_
MZWL%<[U2/2/U';TH,ULW6<;)5@Q0KML[I/Y%?Y=)*&.8?W\Y*4>Y_>^:HC(&
M_809*Z-DS;=LZGJI#S%0L?M7W_):=ZMVY-')[?*6(GC/Y02/>=$9:,6 9BV6
M4U*?WXU=*+"9?1N753IVDKJC?=>(7%;[K6/SS;;/&A%FN+\:&V:>KJ(:F+#U
MBM^(P]!Z1>)4P'W[X6$_\2(/2;<KH!%$ D4P(X&0#ACG69CY&:%:YY^7,C*Q
M\AZF>XQ_PFY!'M?N.:$S,P.FJ!FER+@0^8($FHO(SY9>XP*D8?*-D_G>?!?9
M)7L*FL0)PAQZ 4DA0E&D.DUY,.0DRS(4A%[L+9]>]2R:<T]BG%GZFEEM1?V)
MW^=%>YU*\$J5T'ZSW6#W:GS&2)!F'J0\">2K22G,<!!"/PW"@ 4XC6+2OYI-
M2Y[_!B_F>*.BL5# @GT_[V3V+?G$B=43[<%=I69/#>CWM\&>,45\:G GW$)?
MDIR^3;W;Y3M>%:R+!;[GDJRJO8.SA!*6P)AP A'-$"1AQ&$4^$G&A6 DI4:I
MKJ=I3>RS#[,ZU9DG'=(&/WPNY4XT-FR"-8:<GH%TA(>9K7L-Q1Y9AYFNYV5S
ME>XZ0FG>G-?S(A\DOFH\8GX6=EW4N1QY5V'E,]R6JUQ->%N5])-!;QV-6:;<
M+K;$04\=;,BWGZSB06X]Y.,3=-DQ$-OJ4$EG_MD.F0R$'1XZF3QFNRP5=5.M
MJ5KYK@LY\[U\V_7?JK*NER),@C2D*91;,[DC\!&&F8=CF,5A'"19XGN)44[6
M"*W)EZ4=955J^JFG;;H0G<9*=R%R@H#I0K0O_(;L K2$72Y%9Z5SMA2=IC3S
M4G16Y,.EZ/PC%M<RZQ7W/1+Y5Y4T%X]%PTR"Z(X_/?7EC"0*%%7H@T$M37#7
M7UWHYL2,B*]Q17.QY(:W-&>%=AHA-RZ>W67-\2GGNZ\9%6GORF9\I$VG+?F9
MYX]?^-,*T_:]#9LQ1<)+XS2*8133$*(X%A#[<BL74$[#+(LCE&GMXLY2FOS>
MI:4-!L3->W&- 36NE4[%-W6&3TANU:UK# *3QEV.H+#MX67Z,1CV\]*0;K2U
MU]CS,W;YTA!CO^&7S@.6Z3-YC>^E4]&E,=Z(+_R9%^M!N]>$!H'O1=(R$3^&
MB,0(9B(((6>8!DF*8VY8F.D,P8GMU3YY%8#5,Z"W:;7#4,_?=XF,F2F[$!3S
MK!I-25VEU9PC-V]>C:;P!XDUNL]=%J95\OISV7SA_[G.*ZX.NY]Y];(K/&81
MO34^XXQ!74QR HJR 57'"]@P8Q?:=08IC>W$)" 9;C&&@6 *'\D%^/(*'\=U
MW.QDOSA8[ R9-XDATQ/]5&B9YM-VGL$O125GE ^P7PHI55<$$J\V-3EOMK4/
MWJ_Y=?&E7,FY[O^=X^IC_LR70OY?S!F%B:>*17AR:X,]RJ%(:*;^PEE@U+[O
M(FXFMC';,J6[>A +P.3JJ=X'$)(!\"(Y,3Q O Q_/9=C-E3-C-*.+;#'UZX@
M[,T :<F;.JGLN0.*/:#X<^>O.(')D3-S&2^S>CI.8'OM!KF9U"((=V-U_\;+
M^PH_/:B&]FWP)XD]SP_B /J8$H@B'T,BF <#1!'+Y N,TT@[PO84E8E-V)"<
M>>CL26C&K9 S@<VLBXFL9@&OYV2Y))KUY-SSA:J>$V\O#O7LX N#3-M8F[H/
MUV$WKR)QNI:0UX6R%GB5_Q=G?\-Y\4E=OH6"^DGD226-_ BBU,\@9CB!-&-^
M$C!?1+Y1(O+%'$VLVCN"X%Y2!#^L)$W#J)K+4=?S1V;%TLQJ#*,1^UR^@_C"
MKTV^6H%_XRNV  /8_];"_FD4=ONPPTNA<AUG:,W/VP067@K?R4C"BR>V,Y"#
M<BOO)#UI@7<5N@E#*$LI1+X7R_\D"&8^$A"G)"2)]%8"G)E8OM.DIH[0Z*A=
MT"I]!"4]2^5&=C,3M%?F:(/!%#48S@OGR&B,$)K5&IP7^+6::SSAQ,&Y*MB
MU!%K(@=\+M6>:&!<[E2X\A+%H1_Y/H4IXQF4RDU@&M( QKX(4HX9#81_@:-C
MS]G$UF&X4N^6:!6B.&0'_-;R8GC5X^[M6#E$\V!N[QA= />E#M#ET$SC"%W
MUULZ1)?#><8Q<D# SL!>/SY)3KJN!ZI?SZ?\F;..)^6Y?RRK7VJ^Y"R*/.0+
MZ).$0<2H!PGGTH(&"<<HXD1@HVMO+:I3Q^IL>>@BMLNV-1%]P-6]:1%)/1#U
M;)QS:,SLUX[\ K3]FUKZFSV>X@"*LH*_N"A<:R6R([ND1W-6FV,$PVM[8O:P
M9?,27*FDV_J65VW+]O?Y:MUPMB1ABI$G4LB)<JVRV(,9%0@2)E(<IRCP?,^H
M <EQ.A/;@\^\V=21Q4U3Y63=M.F430GN/MQ]N0+UH"D,^"$O "M7*RS__B3M
M1JT8-3Q'.H6G"%.4"!3"V,LX1!Y+((F36)W)H93&89I$6*_.OT-$K0KW7Q=4
M;NCK%L1BA^\6, VD%X!US$X*N9YM=@"CF37>$ 22(FA)+D!/U&'WDW&I7'4P
M.4%EWBXDXZ(>=!(Y,]P\MNB6EW=E@U>JQ.C58Z,;0/3JL:EO\#_<@);<?A':
MJ\=R79RN)GU6UG$=NU!,,[VRD] HI.>$+%9Q.Z_GFBTXYX00PPB<4T/L7(R[
MJMWZO+0-V+I"#DF,F1\$'!(<"X@"E$*<Q5@BA#A'ZD)9T&6A @&Y9FF-0R):
M7UK6?6E#4MH?W(9DM[0MY+H':%DW_P3"A1^FBSB)NN6L!@_26U.__EEB]_ _
M_]&/O7\*_050X=OM-N4]IVVD\]ZOD-DJ> 1EO070$CDK'=U"]K6#S'&ABM.B
M.%KPCA"8=:T[+>#K96YDI)T67U&J#*FJ#L'SMEJ$=*[[@^%ERF** Q)"(A("
M$0F%JM@00TX12^,$^RP-378+8\0F7BA5<G';A:IE %1;#A:MMUL*@%>K\@]5
M#:=6__H?49BHX*RM,O^/.(C['QBJ\"C$>LKL"C@SM=Y0!5\&:&$AT0=7&["Z
M O@59WD#U"7@]G['G?KK"._($(R2FM4DZ C]VCAH/6/N"/=Y^5=5]=/+=<&Z
M6P!-;_C8LS-HNCJW'^2=RJ^2O !)/W_.V1JO]!WCH[*?]XXO%=MT^3TKL;M;
MC'/B67G-1R><S74>$V?H/X^.N_#2M*O1U-4MWF3:)D'(0NI+;]J+(/)\ DF
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
MGWFS)*E F <(!G$L'0 OQ&HGP&#J^VF*F=S T]2F=(*:?(8UOL]VMZN7T +
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
MZT"3TS<W#4&K+I'#2C+S$$Y$ASD$F-3VZ3Y#$KG._#FC\W.2@(;$'<P'&GS
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
M-\WK1 ,&S'NI)H]RIX0RS[RU%\XNK18@)"A=]K(<([FP)P\LENAZF=%^%NO
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
M,"_*5]GF*@ #<#--&@;?SO4##+R/5/.]4TW+ SHP<8,^_0?^^MEAT V2VU7
M;49TV6 ;I(BS0!OV]!6XV/5CPG@@$QI@C>& 211+G'JYAY,\XE&4LH3G')(?
MWDX+,GUXVG=;2-/VRK/ L:X?HRS*(S])<9IG*@#*18QI)#GV@SB+><KR*,I!
ML0]<:MORH2ND-HQ?P+(  Y5Q >SPM5VG,G23+H^1/9BL</(I?&=]^R>M1/U^
MM:[EP_JW\J70J F?2_&5/AO=]$W-,?.W7Y,PWTZ/"CN]K78E)] R&JJH(:L"
M&?10/$M]=O;;U_O/O9;IM49)$<5K(;;*'XSJ!;3Q-A'::@,^.O%B&W$3\?H;
M<J/QME7 =?V^ 2QYDB57Z_F7HI2?-_*Y?@P3$D:<,IP$680)#WU,,T_@*,FH
MSW-&A31J<C1-:F9[U831$67TAZ:-&N+@MF.#"C-;U-RH 6;.MAJP*'F=$LY9
MV>L@H85+7Z<$/B]_G7P"9LIUM7G\UO:.UIO-I@F1S[Q8JATU3C)/;;/C2. L
MR@CFA <!9VF6AD;(AA?FGO]>O*B[C+/[IL'S?=.N -27Z9)*QJWS2D%AYF@K
MH[$YCD@S9G_JL9[MJ=\.=G=IQD4,;424G66-#8&W-7NO$^1N6=W<8C^F*8F(
M% 235*KM69JGF*4DPU[&HI3D*<NDT='TV<RSWP:]ZM2)'35 /[-C^<>MYBJI
M8#9C+!"HD=E%YJW:F!W/M%@3LXL"]%N871Y@>XNSJ[[2-Z^7#Y.;8EY&:RGZ
MJ$/?=$9"76SD=UF]%ERV_DYGHSZ5S2QM_Q@>I($068(SH8M&! MP%K,4QS$)
M/)'1+"/ BZ!Y&9[9B-NS-MPPAWB/.^A5TLROS? TYV_T,H"[X?O/[V]:+ +\
M:_,RN@0$=%M5:J!L4VT^E[R2ZF-=6-T4S: >BRYOO);1H[-+LYG97?C>;1GE
MGU_=+437<F5X7E>;KG;I+O]4E%1M;<JGMLK-\QE/1<2QQP..U:XDQ30-0^PE
M(O$]/TP8!R%FC1&;^W:_1[K-M&N[1.A(/M\Q8E,?.*I 0__J2"U W]C7B-)"
MBT1:UUM%7;HN'301T97;&B.UK,LQ$/K,79@\ S-UKO.JJK?'W[\_2I$G+,TB
MS!.:8L+"#*O 3.)$,!&*0,HP,3I=.$PYL]G^KCR=6K6_ZRVBH6'VQ!TW/SLA
M8$;V^]?/#Q\_H.\/MP\?OU]O3N<LCVQYNL&MS72_',RE-]4B1G'.^NZK?^$3
MN[5,K9.%K&_OE4ID54GQ?;/F_]7E7=$LDB3,4\S#-,.$YAYFG$HLHB@+LSA7
M2QKHMG:$ULPFT5)&MVA/&S7$8<O6F*[,5BU'&H#9TY#P,^2G&<CG:,4:H[3H
M@F4@\NEZ9?*(G34WT+F]4K9>Q22/4B^,HT3G6NC<4QGC3$2Q^I4)F1/*PQ!T
MVC!,:F9;;@&<5P8EE5 5F=FP&\%A)MS*?-2!8XZ6Z=.B.;+>$4*+&N^TP*>V
M:_ $/$5$3?)5KG=81(8Y(4</S9T$LB[QUX]WAJ9V+M*X95TE#<R0=H(X7/L&
MN;?*V3B>:;$DC8L"]+,R+@^PC#GY#RFV.K]20Y]]6JW__+Y]>5DU!XMTU4NX
M>=!=( YUOF&<I(1(#T=1J):P)*(X5:L79K$G\SP,=$P*BD?M^)@[5NVX:A!A
M>_RT'=PUE^ASF:^K9XO#<5O-&T:W\^L3&/GV5+G7WLVQ5GMLH3\:QM L)=A7
M*L=5V&S)Q;(A]76J.@NWKYS.=F/]I E\DR_Z<*KME=72Z:$]>#$14D7B(@D"
M3"*6X(SS'"?$HWXD9"H$J"6G <V9G=?G4FSK3:6K'1I6@,&YB=),=]I.50'=
M<3?$T9YZS\O,A/  D-?9#GR:XL([<6,5G._(S1^U<P>?:%$U=T]M/GE7:RKN
MRF^ZN*12-)L66+^7:U;+ZE5[HL_ERW:CKZY*W8VT1<JC*[YMP6&_K5>K3^M*
M)\L^2N8EA'LIUMWN,(E3W0W/"W&0"YXF/I&A""%^9$YF9W9 FG74\'Z#6NYW
MQ=)-9[B] &W/N!O4EP$U0J!C*6Y03P[TAY8$=:( DVEG_0J8><6_RXN%N=._
MQSL%N^0EE.W(E\_*ZJ*+P!)*/UT]%J$)[P[Q6U'*BJZ^=895]])WZOOUJN ]
M ,\\#X(T(CD.HU@#&&<"IZ%:4+Q<AE)$,DQR:MH2 D!WYL6@XP3M6>FG,)GW
M&8 H<MP/SZ@>F$L=U8S:"+>,&.V$KU*7>2^&F=1FUX!A7'UNFBM8"#S240$R
MVV)M%"Q$[/=.L'G<+GIO6C2H_W2.ZBM=:0(Z![\J-&Z,_N"V%,=_Z(UL<]!V
M^9(?9/OOOHGVQ[_X#\VV[G;[,<\EWSSZ+$F\C%(L1!1@HG[#J2\#G GU3C/A
M4R\ %8<ORS[(J<.+T/>)I^]$Q\LONFBSZ?>CD]2:'^2!?UB0OO";-@O;_[[O
M#[;J:,YNVI/8'H,WZ, [:H?H]WCRQ^,GNA*BPW=A)]<O369RU^]R)UO3!QRU
MTKF+[W_.6W$4\2_,_*)[@)_S8DYW!3^)"[L%[JO<: [NJ_5K(:3X]>WW6BKR
M^US*6[XI7IL+[WVQ%"&^",,TQE2G1!*N\R+C6*I%BM @(BF+?%#?(#@+<Q\E
M[5.<Z9[T_X&M)A9J-5L1YE46\$Y=;EH/O>,&L3?T3C.DUN5?T$&-!Z:<EK9=
MKQ-'/M6"@47]HKV"3GW;%3/9WJ9Q?:2B\^UW;<MRC\@@YCA) H)))!AF?N3A
ME*:2BH#G,O)A=V<G%&9/26WH-24$T$NR4UV87HE=(2'T NP@W"QII@.2.+O:
M.IU_X8NL ?'.KZV&!EKEH-W+]5>Y!F>A]1];( _M_N,=^OKQ#I2*=B39N+5<
M*11PZ3S(XSXC[9((MCEI1W,MF95V28B3O+2+0^R6F;8&61<4KDL5AG]8/].B
M?"3"#_/04TM- XL0B1#3/$IQ$/FQ2 DAC(&:<ERD,K/E=""4>Z+HCY8L\ [S
MLH+,UI^KQ8;9%EQB\#HT*I&CM>@RC477HU$Q3]>D\<$6\'GB/Q_6>KH&U\84
M+Z__T,R6U6NVO%FC?C&RX6;Q7,KI%<I:0)@-#<OF#+UG4!H[R+NCF9;#N+LD
MP!&HW<4!\#O=!HNTJ4'HL$7]+!(!%3$.:9Q@0A*&*4]B3(,TH3)DN12QR57!
MI<EG/LAO<56;'G$@=-6+>A@WF6NE@UE-*UA;LS.!NCHMF/D-Z34"VEV#WCX]
M54U+'\1I5;TU1V5-1XH;]4)UTK5B!C&Z:JKCZQ]2;I!0HV_T1^6^<*9[^4C^
MM3NW'^WR\X]>Z=/N45K)!IR@N2U0GHI)5,FNE_&Z0LJ":R6>0#17#A[IQI]O
MDE;HG?I,LUCJ;'KU551$:9.NR=_X2K%9Y&BU+I]D]<L_W-SI#KVBD8O;LT<6
MNYT=8K9_!3LXQFH#^D\50'39,Q]DS:NB:>L.;MD[/=,"V]1_WM[>[_NT]'@
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
M6TX3^0C[L:>U%"HH!BG7GD:/)$!&/AUFSY651?K4.O-_((GC7I*UA]V0&NH
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
MA,$0H[8BF@$&&N]!V;A)ZP%L4WM]]("R19K^C4132_+K#*7KMV]>? W360U
M?EDL/X09_GVZ_GSS4OPE$3M=U[^WK1JY//&9ULZ@!F2!=ID5"J)CJ4H\&&<C
M[;;F1V1C'L9-D0^ W#%UW '&[W8)7' A"S=:")(AA="T4[VN.Q5!^B*SU@E9
M\WODW92,FT1OC[<&\NX -;N+9:]W@" V)!A;KR5+K=I-@6VFF)!LI!2F]0"0
MQ^@9M^2^/8*:R;X#'%UE9M[0GGA-OUU-4"KN<TF PA('DOM:**:) ^UY1NU1
M#'8E<$5%)[52#7.<QPFX"X@TJ>.7.<<0$"%B)*ZC2Q"8"&"8-4RG:$@&S[<Y
M8_C4Z9'X&:8IXQ!E'@WA+[B<+NJUZ7+=!,COEHNR]1<GV3''I*'C/5&,K0H=
M!,$6#9S73CH42F/K',?UZIW8MC: .E*H'=BUQ_J_*;K Z:>+0>'IVR:D#FFC
MHOG- /L]IEE8K:9EFNX$W+^0X%^\??GZ/899K17[G=R/&L2\7;Z9TK[+FQ^_
M:C/WB1ON.0/N"XG.ZP+>FPQ"*&$D%I-=ZSQ)1^QW4IW:9D-T)->#8'7J%(V/
M@V_,?:5WF4UXL9RNZA, Y\MZNFT.DRO)<"-X$+X KXZ<DBJ#9RR#U5FBK-57
MNK4W\@1L=5**.^Q&&@L&7=P /B24JUQ962Q79 ]N9-&N;,<EUSL=O6T*;2(\
MXUFG ,6Q:C$HU''2,!".%V&RY$JU'N<P,$N=E!0/NR?&4'\'+MP.25QM;6>L
M59HD;),R%+07 X[; L1#4#;K(.( 31(/D=-)*7(;%+82>P?M^M?;8_5Q\< %
M_Z:H.H85YLHX<7WAHY&_M9JN::\MOTX3;D\6\MP6G^:;KVP'F4F1@\N<I* #
M@C+&0*!S!00F:X+RUC2OY!F:I[%'J#3%<E< Z,"DWD\0;<Z<B3$JLAAM?3.>
M9)QB!D?,0$;G#<L^Z=B^@GHG*6,/2QDX'W>XN/N)W!IE%X5A*#5R*-Z[VA3C
M(#*9(4EF#/DDRF'K$2E/F"H>;))TGZGB0Y1Y8JKXY_G-69Y/T8^T6I278?7Y
ME]GBCU6K5J1;WQRN"^EATMLW(%TM=-5KHH1,W&, Q>@L5,S4UUMJ<S8WSD?T
M#$7K@0V/T7/R=3RNZS??+1=?IR2YG[[]OJI3$*Z>YWJ1UM.OVWCL4@*F,.>,
M]B""*W5?1/!91^!.RXR%Z^Q;IWP/I[*3NZ]3$73O!G]8=77@QMVXEO%>6L>X
M@J*"I#.@.A71"A!&Y2R$<#*U?BWMP+NNP0 TM)X?O@L[1.@=P.56%%1#F'F:
MSFI0?WUW\7%QJ"B9-CS;'(!+DJ?23H&/(8#')&QBY. V'Y@^!!_C7M<^,81'
M!T('F^$5TLIINE$Q_7Z&%W<+MT87*6V<\DF"D<A N:P@:K_Y):028W"R]?&]
M#UWCVMOQT7/O$<'&JNP GIN16J_/OH3ILDKZY>>P_(2K26 \2*<$Q79.U/XC
M![X..5)6,/*53)1*MK:V.RD9UUYV!\$&ZNH =)>7J6^WU0;EW1*_3A?GJ]FW
MW^?3S1";3;K@IV\?SN-JFJ=A^>WM\C)K\!57:\3?%O/%I8RWRIBPD@RFE""*
M.J=$6CJII)#@>+39),=<\_:@01@9MX"E.\B/#Y:.4J+U[N"GNW<'$V2!.RD*
MY)+(1S.U5HY8@.19L!J+<ZYYBG,G)>.6C'0'W0;JZL!:;Z2U(L)WC(>=Q,0#
MJ[T.J>X>%9.#J)0"VD0B6HE<L-:=18_1,VY]1G< ;*:Z#F!XT\N^&H(V__1R
ML2)>7&*L*., 940RYX(<H" #Q%Q,=-EGYEN_V_@8/>,6:'0'PV:JZP"&U1U9
M51$B>20__UFE=3Y=?=XFEFO+Z408@=Q&DD]F&E0IOCZ7XL$F8W0=?)5\ZW:
M[Q(U;I5%=X!LJ\1^_,/[OG+U>]??WLW"=ES2E\KB).HZJ=U9L%[3ED-KP8N
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
M,]JQ""P+Y6R0LN36;1(/$C/N<*GVT6 ;J7< G\L[L6T"NK)R>2\S$4$Z:84
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
MY[#,;Z;KS]/SLS?K?,F$BT%)+PUH6Y-L3@CP65M@#&7.R666RAZ8>'"!\<H
M!D)$&U&.C(<;A_DF=W;)@;:."ZV@J)HPTXHB94XVU)*JHQ<,T]WWIG:"8??7
MQTD]#HB$!D+L)'/T/;_NS=6U<PXV<%LR6,LD^78I@"/, W(3<RB^>-_^A8,#
M"!S_:F0X'WEXC74 Q^U>_8#I?#E=3W'UR]??IA-'3IR+64(,6!^N4>36Y:0A
MD%WU-I48FF<,=M'1?P!VI-KOCKP_50<]%X!<B+#Q,*)]O]PZY?GD0XD.2E&A
ML5*GZ*'4PFM59_\&7I_=R\%@<77F-!_AM'CZE"?CTD8?,S"L@I YU9"4_E4:
MAX63.,H8Q^9S2WD>@J?C4YZ'*.LYISQCX1@BN:<N5SZ=U[59TT!".B#0LY+O
M-B3^_RG/%I!IE?(\1']]ISQ=2G93U>-#9J""KS>T$D'D.F3',"]2"R3^ETQY
M'H2"_5.>AZBDXY1G?1U'<&202F7#\$@,%0:HO$<E',:DO^/:/=>4YT$:W#/E
M>8@X.P@F#PN9=,JL>.7 Y-KJQ8RF/54\R*PHEM(EZD'*.__+Y3:..0R'UU@'
M<-S4EF%>U<:+S6,,96>DC=)'9PT':51]L)?VK"NTC[D2REC!(XFP,0[WHZQ_
M;^Q(:"P&UU,'Z+M\C^?M]B&0FS52$Q&=B-D:X,&DVN)C(::L0 JTS#@OXWX3
M!PZ W"/D]&_HVN"LE49Z3;>]6<P_?<3EV2N,]=)L<TGRTV*Y7/Q1']2\KM:[
M^7/'I^!.6:U)6JX9NXU2=9OOWR^"S48&I36'(FKJ1&D%/@H.S'L7R5?,UK?N
M1=A-R<EMS?35UW/ZUGG=,EO?HPCGR;GUY.IRVC:697 A(QBT7!0ND[:M$VT[
MR!BY=_1TO=]K6SY1U!T<?W77K2]VW4?Z.]MZ(>^]\)Q#DJF6<&@!@25/1[A#
M$8-D.;8>BKN+CO'Q<I)R%XTEW2%:+F)J[U4H=,C7KNN:=M82 OT6/,8LE>")
M8IN!\=+#$,#3-?P=R!PA[@Y LXD/,%<F+O(E06:II5<0A9#DQ7$#Q)" +(1G
M3 EG5.N+ZWM$] 658S1[;U#D*6+N "<O:<GI^I>0-G/GM\.JBC&%&T8&%D.M
M09+D[D<+(@MC> A2,6P,E/M4C#SWK?$Q=**4N\/)Q<Z)M&LL4P:8S;:F8!F$
M4"(4EW3RRBHMAD5*#P?0J;I]%"I'"'KD&Y :3;Y9A,N)J*YD[BW9U:SJ;!C%
M'(3ZVG>BW20B22;P.T'0SDN/VU_M2>'':&C11%P=6(7;=O(Z$X7,!Q4HH#.;
M0[!.U_ 4T]%)R)SFA9?8W-=X@)219W<U/D=:R+L#V-S,.OVVV+XU.%]/0DP%
MF0ODM?M(>T@B>,\$8,!@+<,LL'7F=S<E/<7 1RIY1U!SHL0[P,UMR?P^#V>+
MY;H^CU133'5.YKLEGDW/SS:O)2FILL$$16I=9SI+\'7((L]*N>*-%=@ZG7(
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
MWYV;GTWM4Y[FT]UO^^[AA97;(&*RB%GDN^VR7&"P@5A11\.R(EE,9/% <ZA
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
MU2F$9^E)L(]N Q$IE%QX/11EA*<.>L##[@L0'B:C@A@#J,.J($C%/$Z=CGE
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
M4^6!.!^PW_@>??T7\1]:M>Z__^O_ %!+ 0(4 Q0    ( '6(G5I>"L8> 0@
M *PN   2              "  0    !A,C R-3 S,S%E>#,Q,2YH=&U02P$"
M% ,4    " !UB)U:D5FVWP (   !+0  $@              @ $Q"   83(P
M,C4P,S,Q97@S,3(N:'1M4$L! A0#%     @ =8B=6G#!^%W.!   >AH  !(
M             ( !81   &$R,#(U,#,S,65X,S(Q+FAT;5!+ 0(4 Q0    (
M '6(G5J 1QRPT 0  /\:   2              "  5\5  !A,C R-3 S,S%E
M>#,R,BYH=&U02P$"% ,4    " !UB)U:?^6&Q2T< 0"%%Q$ $
M    @ %?&@  ='1I+3(P,C4P,S,Q+FAT;5!+ 0(4 Q0    ( '6(G5KS=+4R
M>0L  #5R   0              "  ;HV 0!T=&DM,C R-3 S,S$N>'-D4$L!
M A0#%     @ =8B=6AF>2>IV&P  T@ ! !0              ( !84(! '1T
M:2TR,#(U,#,S,5]C86PN>&UL4$L! A0#%     @ =8B=6@Y.1=Q"/@  B80"
M !0              ( !"5X! '1T:2TR,#(U,#,S,5]D968N>&UL4$L! A0#
M%     @ =8B=6G97U7-=P   8$,' !0              ( !?9P! '1T:2TR
M,#(U,#,S,5]L86(N>&UL4$L! A0#%     @ =8B=6JZ.Y1N@;@  J/<$ !0
M             ( !#%T" '1T:2TR,#(U,#,S,5]P<F4N>&UL4$L%!@     *
-  H A (  -[+ @    $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>64
<FILENAME>tti-20250331_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2023"
  xmlns:dei="http://xbrl.sec.gov/dei/2023"
  xmlns:ecd="http://xbrl.sec.gov/ecd/2023"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2023"
  xmlns:tti="http://www.tetratec.com/20250331"
  xmlns:us-gaap="http://fasb.org/us-gaap/2023"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="tti-20250331.xsd" xlink:type="simple"/>
    <context id="c-1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementClassOfStockAxis">us-gaap:SeriesAPreferredStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <instant>2025-04-28</instant>
        </period>
    </context>
    <context id="c-5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ProductMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">us-gaap:ServiceMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-10">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-11">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-13">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-14">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-20">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-22">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-23">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-24">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-25">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-26">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-27">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-28">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-29">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</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="c-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-32">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-33">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-34">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-35">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-37">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-40">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-41">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-42">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-43">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-45">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-46">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:TreasuryStockCommonMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedTranslationAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-48">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AociGainLossDebtSecuritiesAvailableForSaleWithAllowanceForCreditLossParentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-49">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-50">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:NoncontrollingInterestMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-51">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <startDate>2024-07-01</startDate>
            <endDate>2024-09-30</endDate>
        </period>
    </context>
    <context id="c-53">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RestatementAxis">srt:RevisionOfPriorPeriodErrorCorrectionAdjustmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-54">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RestrictedCashAndCashEquivalentsCashAndCashEquivalentsAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-55">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-12-31</endDate>
        </period>
    </context>
    <context id="c-56">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-58">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-59">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-60">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-61">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-62">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-63">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-64">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-65">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-66">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-67">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-68">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-69">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-70">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-71">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-72">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-73">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-74">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-75">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-76">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-77">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-78">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-04-01</startDate>
            <endDate>2024-04-01</endDate>
        </period>
    </context>
    <context id="c-79">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-80">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-81">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-82">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-12</startDate>
            <endDate>2024-01-12</endDate>
        </period>
    </context>
    <context id="c-83">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tti:DelayedDrawTermLoanDDTLMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-01-12</instant>
        </period>
    </context>
    <context id="c-84">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tti:DelayedDrawTermLoanDDTLMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-12</startDate>
            <endDate>2024-01-12</endDate>
        </period>
    </context>
    <context id="c-85">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:TermLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-01-12</instant>
        </period>
    </context>
    <context id="c-86">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-87">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-88">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">us-gaap:LetterOfCreditMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-89">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">tti:SinglineLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-90">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-91">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-92">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:FedFundsEffectiveRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-93">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRAdjustedForRequiredBankReservesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-94">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-95">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">tti:SecuredOvernightFinancingRateSOFRMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-96">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-97">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:BaseRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-98">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:AssetBasedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-99">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:SwedishCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-100">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:SwedishCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-101">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">tti:FinlandCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:SecuredDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-102">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis">us-gaap:InventoriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-103">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis">us-gaap:CapitalAdditionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-104">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis">us-gaap:CapitalAdditionsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-105">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">tti:OffshoreDivisionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tti:InitialBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-03-31</instant>
        </period>
    </context>
    <context id="c-106">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DisposalGroupClassificationAxis">us-gaap:DiscontinuedOperationsDisposedOfBySaleMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsAxis">tti:OffshoreDivisionMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">tti:InterimReplacementBondsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-03-31</instant>
        </period>
    </context>
    <context id="c-107">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">tti:MaritechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-08-16</instant>
        </period>
    </context>
    <context id="c-108">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-109">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SegmentDiscontinuedOperationsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-110">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LossContingenciesByNatureOfContingencyAxis">us-gaap:SuretyBondMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">tti:MaritechMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-09-01</startDate>
            <endDate>2024-09-30</endDate>
        </period>
    </context>
    <context id="c-111">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-112">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-113">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-114">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-115">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-116">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-117">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-118">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-119">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-120">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-121">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-122">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-123">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-124">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-125">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-126">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-127">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-128">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-129">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-130">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-132">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-133">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-134">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-135">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-136">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-137">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-12-31</instant>
        </period>
    </context>
    <context id="c-138">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-139">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-140">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:EquitySecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-141">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-142">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-143">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:RightsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-144">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-145">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-146">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:ConvertibleDebtSecuritiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-147">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-148">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-149">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByAssetClassAxis">us-gaap:InvestmentsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-150">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-151">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-152">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-153">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-154">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-155">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-156">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:KodiakGasServicesInc.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-157">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-158">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-159">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:StandardLithiumLtd.Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-160">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-161">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-162">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ScheduleOfEquityMethodInvestmentEquityMethodInvesteeNameAxis">tti:InvestmentsOtherMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-163">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-164">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-165">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-03-31</endDate>
        </period>
    </context>
    <context id="c-166">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-167">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-168">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-03-31</instant>
        </period>
    </context>
    <context id="c-169">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-170">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-171">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2024-01-01</startDate>
            <endDate>2024-03-31</endDate>
        </period>
    </context>
    <context id="c-172">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:CompletionFluidsProductsDivisionMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-173">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:OperatingSegmentsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:StatementBusinessSegmentsAxis">tti:WaterFlowbackServicesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <context id="c-174">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000844965</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ConsolidationItemsAxis">us-gaap:CorporateNonSegmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-03-31</instant>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="segment">
        <measure>tti:segment</measure>
    </unit>
    <unit id="acre">
        <measure>utr:acre</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="c-1" id="f-28">0000844965</dei:EntityCentralIndexKey>
    <dei:CurrentFiscalYearEndDate contextRef="c-1" id="f-29">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="c-1" id="f-30">2025</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="c-1" id="f-31">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:AmendmentFlag contextRef="c-1" id="f-32">false</dei:AmendmentFlag>
    <dei:DocumentType contextRef="c-1" id="f-1">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="c-1" id="f-2">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="c-1" id="f-3">2025-03-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="c-1" id="f-4">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="c-1" id="f-5">1-13455</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="c-1" id="f-6">TETRA Technologies, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="c-1" id="f-7">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="c-1" id="f-8">74-2148293</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="c-1" id="f-9">24955 Interstate 45 North</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="c-1" id="f-10">The Woodlands,</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="c-1" id="f-11">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="c-1" id="f-12">77380</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="c-1" id="f-13">281</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="c-1" id="f-14">367-1983</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="c-2" id="f-15">Common Stock</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="c-2" id="f-16">TTI</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="c-2" id="f-17">NYSE</dei:SecurityExchangeName>
    <dei:Security12bTitle contextRef="c-3" id="f-18">Preferred Share Purchase Right</dei:Security12bTitle>
    <dei:NoTradingSymbolFlag contextRef="c-3" id="f-19">true</dei:NoTradingSymbolFlag>
    <dei:SecurityExchangeName contextRef="c-3" id="f-20">NYSE</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="c-1" id="f-21">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="c-1" id="f-22">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="c-1" id="f-23">Accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="c-1" id="f-24">false</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="c-1" id="f-25">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="c-1" id="f-26">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding contextRef="c-4" decimals="INF" id="f-27" unitRef="shares">133072970</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-5" decimals="-3" id="f-33" unitRef="usd">88169000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-6" decimals="-3" id="f-34" unitRef="usd">73337000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-7" decimals="-3" id="f-35" unitRef="usd">68971000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-8" decimals="-3" id="f-36" unitRef="usd">77635000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-1" decimals="-3" id="f-37" unitRef="usd">157140000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-9" decimals="-3" id="f-38" unitRef="usd">150972000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-5" decimals="-3" id="f-39" unitRef="usd">49765000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-6" decimals="-3" id="f-40" unitRef="usd">45406000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-7" decimals="-3" id="f-41" unitRef="usd">54800000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-8" decimals="-3" id="f-42" unitRef="usd">65708000</us-gaap:CostOfGoodsAndServicesSold>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-1" decimals="-3" id="f-43" unitRef="usd">9151000</tti:DepreciationDepletionAmortizationAndAccretion>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-9" decimals="-3" id="f-44" unitRef="usd">8756000</tti:DepreciationDepletionAmortizationAndAccretion>
    <us-gaap:AssetImpairmentCharges contextRef="c-1" decimals="-3" id="f-45" unitRef="usd">518000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges contextRef="c-9" decimals="-3" id="f-46" unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:CostsAndExpenses contextRef="c-1" decimals="-3" id="f-47" unitRef="usd">114234000</us-gaap:CostsAndExpenses>
    <us-gaap:CostsAndExpenses contextRef="c-9" decimals="-3" id="f-48" unitRef="usd">119870000</us-gaap:CostsAndExpenses>
    <us-gaap:GrossProfit contextRef="c-1" decimals="-3" id="f-49" unitRef="usd">42906000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="c-9" decimals="-3" id="f-50" unitRef="usd">31102000</us-gaap:GrossProfit>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-1" decimals="-3" id="f-51" unitRef="usd">24134000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-9" decimals="-3" id="f-52" unitRef="usd">22298000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:InterestExpense contextRef="c-1" decimals="-3" id="f-53" unitRef="usd">4724000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense contextRef="c-9" decimals="-3" id="f-54" unitRef="usd">5952000</us-gaap:InterestExpense>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-1" decimals="-3" id="f-55" unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-9" decimals="-3" id="f-56" unitRef="usd">-5535000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-1" decimals="-3" id="f-57" unitRef="usd">-8962000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-9" decimals="-3" id="f-58" unitRef="usd">3978000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-1" decimals="-3" id="f-59" unitRef="usd">5086000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-9" decimals="-3" id="f-60" unitRef="usd">1295000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-1" decimals="-3" id="f-61" unitRef="usd">1037000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-9" decimals="-3" id="f-62" unitRef="usd">380000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss contextRef="c-1" decimals="-3" id="f-63" unitRef="usd">4049000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss contextRef="c-9" decimals="-3" id="f-64" unitRef="usd">915000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-1"
      decimals="2"
      id="f-65"
      unitRef="usdPerShare">0.03</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-9"
      decimals="2"
      id="f-66"
      unitRef="usdPerShare">0.01</us-gaap:EarningsPerShareBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-1" decimals="-3" id="f-67" unitRef="shares">132350000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-9" decimals="-3" id="f-68" unitRef="shares">130453000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-1"
      decimals="2"
      id="f-69"
      unitRef="usdPerShare">0.03</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-9"
      decimals="2"
      id="f-70"
      unitRef="usdPerShare">0.01</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-1" decimals="-3" id="f-71" unitRef="shares">133757000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-9" decimals="-3" id="f-72" unitRef="shares">132123000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:ProfitLoss contextRef="c-1" decimals="-3" id="f-73" unitRef="usd">4049000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="c-9" decimals="-3" id="f-74" unitRef="usd">915000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest contextRef="c-1" decimals="-3" id="f-75" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest contextRef="c-9" decimals="-3" id="f-76" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest contextRef="c-9" decimals="-3" id="f-77" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest contextRef="c-1" decimals="-3" id="f-78" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax contextRef="c-1" decimals="-3" id="f-79" unitRef="usd">3876000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax contextRef="c-9" decimals="-3" id="f-80" unitRef="usd">-1634000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax contextRef="c-1" decimals="-3" id="f-81" unitRef="usd">-9516000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax contextRef="c-9" decimals="-3" id="f-82" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-1" decimals="-3" id="f-83" unitRef="usd">281000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-9" decimals="-3" id="f-84" unitRef="usd">237000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-1" decimals="-3" id="f-85" unitRef="usd">17722000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-9" decimals="-3" id="f-86" unitRef="usd">-482000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-10" decimals="-3" id="f-87" unitRef="usd">41000000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-11" decimals="-3" id="f-88" unitRef="usd">36987000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue contextRef="c-10" decimals="-3" id="f-89" unitRef="usd">50000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue contextRef="c-11" decimals="-3" id="f-90" unitRef="usd">221000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c-10" decimals="-3" id="f-91" unitRef="usd">537000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="c-11" decimals="-3" id="f-92" unitRef="usd">626000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-10" decimals="-3" id="f-93" unitRef="usd">120902000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="c-11" decimals="-3" id="f-94" unitRef="usd">104813000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="c-10" decimals="-3" id="f-95" unitRef="usd">106486000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c-11" decimals="-3" id="f-96" unitRef="usd">101697000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c-10" decimals="-3" id="f-97" unitRef="usd">22616000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent contextRef="c-11" decimals="-3" id="f-98" unitRef="usd">25910000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c-10" decimals="-3" id="f-99" unitRef="usd">291054000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="c-11" decimals="-3" id="f-100" unitRef="usd">269628000</us-gaap:AssetsCurrent>
    <tti:LandAndBuilding contextRef="c-10" decimals="-3" id="f-101" unitRef="usd">24671000</tti:LandAndBuilding>
    <tti:LandAndBuilding contextRef="c-11" decimals="-3" id="f-102" unitRef="usd">24475000</tti:LandAndBuilding>
    <us-gaap:MachineryAndEquipmentGross contextRef="c-10" decimals="-3" id="f-103" unitRef="usd">327680000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="c-11" decimals="-3" id="f-104" unitRef="usd">323044000</us-gaap:MachineryAndEquipmentGross>
    <tti:AutomobilesAndTrucks contextRef="c-10" decimals="-3" id="f-105" unitRef="usd">10540000</tti:AutomobilesAndTrucks>
    <tti:AutomobilesAndTrucks contextRef="c-11" decimals="-3" id="f-106" unitRef="usd">10325000</tti:AutomobilesAndTrucks>
    <tti:ChemicalPlants contextRef="c-10" decimals="-3" id="f-107" unitRef="usd">72198000</tti:ChemicalPlants>
    <tti:ChemicalPlants contextRef="c-11" decimals="-3" id="f-108" unitRef="usd">69815000</tti:ChemicalPlants>
    <us-gaap:ConstructionInProgressGross contextRef="c-10" decimals="-3" id="f-109" unitRef="usd">41423000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross contextRef="c-11" decimals="-3" id="f-110" unitRef="usd">34910000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-10" decimals="-3" id="f-111" unitRef="usd">476512000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="c-11" decimals="-3" id="f-112" unitRef="usd">462569000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-10" decimals="-3" id="f-113" unitRef="usd">327237000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="c-11" decimals="-3" id="f-114" unitRef="usd">320409000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-10" decimals="-3" id="f-115" unitRef="usd">149275000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="c-11" decimals="-3" id="f-116" unitRef="usd">142160000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-10" decimals="-3" id="f-117" unitRef="usd">56745000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="c-11" decimals="-3" id="f-118" unitRef="usd">55421000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="c-10" decimals="-3" id="f-119" unitRef="usd">24072000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="c-11" decimals="-3" id="f-120" unitRef="usd">24923000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="c-10" decimals="-3" id="f-121" unitRef="usd">97181000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet contextRef="c-11" decimals="-3" id="f-122" unitRef="usd">98149000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="c-10" decimals="-3" id="f-123" unitRef="usd">30584000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="c-11" decimals="-3" id="f-124" unitRef="usd">29797000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-10" decimals="-3" id="f-125" unitRef="usd">9686000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-11" decimals="-3" id="f-126" unitRef="usd">28159000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:OtherAssetsNoncurrent contextRef="c-10" decimals="-3" id="f-127" unitRef="usd">12233000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent contextRef="c-11" decimals="-3" id="f-128" unitRef="usd">12379000</us-gaap:OtherAssetsNoncurrent>
    <tti:TotalOtherAssets contextRef="c-10" decimals="-3" id="f-129" unitRef="usd">173756000</tti:TotalOtherAssets>
    <tti:TotalOtherAssets contextRef="c-11" decimals="-3" id="f-130" unitRef="usd">193407000</tti:TotalOtherAssets>
    <us-gaap:Assets contextRef="c-10" decimals="-3" id="f-131" unitRef="usd">614085000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-11" decimals="-3" id="f-132" unitRef="usd">605195000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c-10" decimals="-3" id="f-133" unitRef="usd">41042000</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <us-gaap:AccountsPayableCurrentAndNoncurrent contextRef="c-11" decimals="-3" id="f-134" unitRef="usd">43103000</us-gaap:AccountsPayableCurrentAndNoncurrent>
    <us-gaap:DeferredIncomeCurrent contextRef="c-10" decimals="-3" id="f-135" unitRef="usd">19594000</us-gaap:DeferredIncomeCurrent>
    <us-gaap:DeferredIncomeCurrent contextRef="c-11" decimals="-3" id="f-136" unitRef="usd">23022000</us-gaap:DeferredIncomeCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="c-10" decimals="-3" id="f-137" unitRef="usd">9325000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="c-11" decimals="-3" id="f-138" unitRef="usd">8861000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="c-10" decimals="-3" id="f-139" unitRef="usd">10695000</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent contextRef="c-11" decimals="-3" id="f-140" unitRef="usd">12493000</us-gaap:TaxesPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrentAndNoncurrent contextRef="c-10" decimals="-3" id="f-141" unitRef="usd">27886000</us-gaap:AccruedLiabilitiesCurrentAndNoncurrent>
    <us-gaap:AccruedLiabilitiesCurrentAndNoncurrent contextRef="c-11" decimals="-3" id="f-142" unitRef="usd">30040000</us-gaap:AccruedLiabilitiesCurrentAndNoncurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-10" decimals="-3" id="f-143" unitRef="usd">5830000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent contextRef="c-11" decimals="-3" id="f-144" unitRef="usd">5830000</us-gaap:LiabilitiesOfDisposalGroupIncludingDiscontinuedOperationCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c-10" decimals="-3" id="f-145" unitRef="usd">114372000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="c-11" decimals="-3" id="f-146" unitRef="usd">123349000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="c-10" decimals="-3" id="f-147" unitRef="usd">180095000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="c-11" decimals="-3" id="f-148" unitRef="usd">179696000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="c-10" decimals="-3" id="f-149" unitRef="usd">25291000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="c-11" decimals="-3" id="f-150" unitRef="usd">25041000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:AssetRetirementObligationsNoncurrent contextRef="c-10" decimals="-3" id="f-151" unitRef="usd">15082000</us-gaap:AssetRetirementObligationsNoncurrent>
    <us-gaap:AssetRetirementObligationsNoncurrent contextRef="c-11" decimals="-3" id="f-152" unitRef="usd">14786000</us-gaap:AssetRetirementObligationsNoncurrent>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="c-10" decimals="-3" id="f-153" unitRef="usd">3849000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="c-11" decimals="-3" id="f-154" unitRef="usd">4912000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-10" decimals="-3" id="f-155" unitRef="usd">3653000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent contextRef="c-11" decimals="-3" id="f-156" unitRef="usd">4104000</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent contextRef="c-10" decimals="-3" id="f-157" unitRef="usd">227970000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent contextRef="c-11" decimals="-3" id="f-158" unitRef="usd">228539000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:CommitmentsAndContingencies contextRef="c-10" id="f-159" unitRef="usd" xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies contextRef="c-11" id="f-160" unitRef="usd" xsi:nil="true"/>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c-10"
      decimals="2"
      id="f-161"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="c-11"
      decimals="2"
      id="f-162"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c-11"
      decimals="INF"
      id="f-163"
      unitRef="shares">250000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="c-10"
      decimals="INF"
      id="f-164"
      unitRef="shares">250000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued
      contextRef="c-10"
      decimals="INF"
      id="f-165"
      unitRef="shares">136207612</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="c-11"
      decimals="INF"
      id="f-166"
      unitRef="shares">134951081</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue contextRef="c-10" decimals="-3" id="f-167" unitRef="usd">1362000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="c-11" decimals="-3" id="f-168" unitRef="usd">1350000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital contextRef="c-10" decimals="-3" id="f-169" unitRef="usd">493424000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital contextRef="c-11" decimals="-3" id="f-170" unitRef="usd">492722000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c-11"
      decimals="INF"
      id="f-171"
      unitRef="shares">3138675</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockCommonShares
      contextRef="c-10"
      decimals="INF"
      id="f-172"
      unitRef="shares">3138675</us-gaap:TreasuryStockCommonShares>
    <us-gaap:TreasuryStockValue contextRef="c-10" decimals="-3" id="f-173" unitRef="usd">19957000</us-gaap:TreasuryStockValue>
    <us-gaap:TreasuryStockValue contextRef="c-11" decimals="-3" id="f-174" unitRef="usd">19957000</us-gaap:TreasuryStockValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c-10" decimals="-3" id="f-175" unitRef="usd">-37449000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax contextRef="c-11" decimals="-3" id="f-176" unitRef="usd">-51122000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c-10" decimals="-3" id="f-177" unitRef="usd">-164376000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="c-11" decimals="-3" id="f-178" unitRef="usd">-168425000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity contextRef="c-10" decimals="-3" id="f-179" unitRef="usd">273004000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="c-11" decimals="-3" id="f-180" unitRef="usd">254568000</us-gaap:StockholdersEquity>
    <us-gaap:MinorityInterest contextRef="c-10" decimals="-3" id="f-181" unitRef="usd">-1261000</us-gaap:MinorityInterest>
    <us-gaap:MinorityInterest contextRef="c-11" decimals="-3" id="f-182" unitRef="usd">-1261000</us-gaap:MinorityInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-10" decimals="-3" id="f-183" unitRef="usd">271743000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-11" decimals="-3" id="f-184" unitRef="usd">253307000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c-10" decimals="-3" id="f-185" unitRef="usd">614085000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="c-11" decimals="-3" id="f-186" unitRef="usd">605195000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-12" decimals="-3" id="f-187" unitRef="usd">1350000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-13" decimals="-3" id="f-188" unitRef="usd">492722000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-14" decimals="-3" id="f-189" unitRef="usd">-19957000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-15" decimals="-3" id="f-190" unitRef="usd">-52957000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-16" decimals="-3" id="f-191" unitRef="usd">1835000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-17" decimals="-3" id="f-192" unitRef="usd">-168425000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-18" decimals="-3" id="f-193" unitRef="usd">-1261000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-11" decimals="-3" id="f-194" unitRef="usd">253307000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss contextRef="c-19" decimals="-3" id="f-195" unitRef="usd">4049000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="c-1" decimals="-3" id="f-196" unitRef="usd">4049000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax contextRef="c-20" decimals="-3" id="f-197" unitRef="usd">-9516000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax contextRef="c-1" decimals="-3" id="f-198" unitRef="usd">-9516000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax contextRef="c-1" decimals="-3" id="f-199" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax contextRef="c-20" decimals="-3" id="f-200" unitRef="usd">3876000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax contextRef="c-1" decimals="-3" id="f-201" unitRef="usd">3876000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-21" decimals="-3" id="f-202" unitRef="usd">281000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-1" decimals="-3" id="f-203" unitRef="usd">281000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-1" decimals="-3" id="f-204" unitRef="usd">17722000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-22" decimals="-3" id="f-205" unitRef="usd">1860000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-1" decimals="-3" id="f-206" unitRef="usd">1860000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockholdersEquityOther contextRef="c-23" decimals="-3" id="f-207" unitRef="usd">-12000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityOther contextRef="c-22" decimals="-3" id="f-208" unitRef="usd">1158000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityOther contextRef="c-1" decimals="-3" id="f-209" unitRef="usd">1146000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-24" decimals="-3" id="f-210" unitRef="usd">1362000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-25" decimals="-3" id="f-211" unitRef="usd">493424000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-26" decimals="-3" id="f-212" unitRef="usd">-19957000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-27" decimals="-3" id="f-213" unitRef="usd">-39565000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-28" decimals="-3" id="f-214" unitRef="usd">2116000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-29" decimals="-3" id="f-215" unitRef="usd">-164376000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-30" decimals="-3" id="f-216" unitRef="usd">-1261000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-10" decimals="-3" id="f-217" unitRef="usd">271743000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-31" decimals="-3" id="f-218" unitRef="usd">1332000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-32" decimals="-3" id="f-219" unitRef="usd">489156000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-33" decimals="-3" id="f-220" unitRef="usd">-19957000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-34" decimals="-3" id="f-221" unitRef="usd">-45886000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-35" decimals="-3" id="f-222" unitRef="usd">655000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-36" decimals="-3" id="f-223" unitRef="usd">-276709000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-37" decimals="-3" id="f-224" unitRef="usd">-1257000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-38" decimals="-3" id="f-225" unitRef="usd">147334000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss contextRef="c-39" decimals="-3" id="f-226" unitRef="usd">915000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="c-9" decimals="-3" id="f-227" unitRef="usd">915000</us-gaap:ProfitLoss>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax contextRef="c-9" decimals="-3" id="f-228" unitRef="usd">0</us-gaap:OtherComprehensiveIncomeForeignCurrencyTranslationGainLossArisingDuringPeriodTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax contextRef="c-40" decimals="-3" id="f-229" unitRef="usd">-1634000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax contextRef="c-9" decimals="-3" id="f-230" unitRef="usd">-1634000</us-gaap:OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationGainLossArisingDuringPeriodNetOfTax>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-41" decimals="-3" id="f-231" unitRef="usd">237000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent contextRef="c-9" decimals="-3" id="f-232" unitRef="usd">237000</us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="c-9" decimals="-3" id="f-233" unitRef="usd">-482000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-42" decimals="-3" id="f-234" unitRef="usd">1623000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue contextRef="c-9" decimals="-3" id="f-235" unitRef="usd">1623000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:StockholdersEquityOther contextRef="c-43" decimals="-3" id="f-236" unitRef="usd">-11000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityOther contextRef="c-42" decimals="-3" id="f-237" unitRef="usd">2339000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityOther contextRef="c-9" decimals="-3" id="f-238" unitRef="usd">2328000</us-gaap:StockholdersEquityOther>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-44" decimals="-3" id="f-239" unitRef="usd">1343000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-45" decimals="-3" id="f-240" unitRef="usd">488440000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-46" decimals="-3" id="f-241" unitRef="usd">-19957000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-47" decimals="-3" id="f-242" unitRef="usd">-47520000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-48" decimals="-3" id="f-243" unitRef="usd">892000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-49" decimals="-3" id="f-244" unitRef="usd">-275794000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-50" decimals="-3" id="f-245" unitRef="usd">-1257000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="c-51" decimals="-3" id="f-246" unitRef="usd">146147000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:ProfitLoss contextRef="c-1" decimals="-3" id="f-247" unitRef="usd">4049000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="c-9" decimals="-3" id="f-248" unitRef="usd">915000</us-gaap:ProfitLoss>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-1" decimals="-3" id="f-249" unitRef="usd">9151000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization contextRef="c-9" decimals="-3" id="f-250" unitRef="usd">8755000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:AssetImpairmentCharges contextRef="c-1" decimals="-3" id="f-251" unitRef="usd">518000</us-gaap:AssetImpairmentCharges>
    <us-gaap:AssetImpairmentCharges contextRef="c-9" decimals="-3" id="f-252" unitRef="usd">0</us-gaap:AssetImpairmentCharges>
    <us-gaap:GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome contextRef="c-1" decimals="-3" id="f-253" unitRef="usd">257000</us-gaap:GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome>
    <us-gaap:GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome contextRef="c-9" decimals="-3" id="f-254" unitRef="usd">2795000</us-gaap:GainLossOnSaleOfPreviouslyUnissuedStockBySubsidiaryOrEquityInvesteeNonoperatingIncome>
    <us-gaap:ShareBasedCompensation contextRef="c-1" decimals="-3" id="f-255" unitRef="usd">1860000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="c-9" decimals="-3" id="f-256" unitRef="usd">1623000</us-gaap:ShareBasedCompensation>
    <us-gaap:ProvisionForDoubtfulAccounts contextRef="c-1" decimals="-3" id="f-257" unitRef="usd">-85000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts contextRef="c-9" decimals="-3" id="f-258" unitRef="usd">-115000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AmortizationOfFinancingCosts contextRef="c-1" decimals="-3" id="f-259" unitRef="usd">495000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts contextRef="c-9" decimals="-3" id="f-260" unitRef="usd">380000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-1" decimals="-3" id="f-261" unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-9" decimals="-3" id="f-262" unitRef="usd">-5535000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="c-1" decimals="-3" id="f-263" unitRef="usd">113000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment contextRef="c-9" decimals="-3" id="f-264" unitRef="usd">29000</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <tti:NonCashCumulativeTranslationAdjustmentGainLossNetOfTax contextRef="c-1" decimals="-3" id="f-265" unitRef="usd">9516000</tti:NonCashCumulativeTranslationAdjustmentGainLossNetOfTax>
    <tti:NonCashCumulativeTranslationAdjustmentGainLossNetOfTax contextRef="c-9" decimals="-3" id="f-266" unitRef="usd">0</tti:NonCashCumulativeTranslationAdjustmentGainLossNetOfTax>
    <us-gaap:OtherNoncashIncomeExpense contextRef="c-1" decimals="-3" id="f-267" unitRef="usd">128000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:OtherNoncashIncomeExpense contextRef="c-9" decimals="-3" id="f-268" unitRef="usd">553000</us-gaap:OtherNoncashIncomeExpense>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-1" decimals="-3" id="f-269" unitRef="usd">15584000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="c-9" decimals="-3" id="f-270" unitRef="usd">19605000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-1" decimals="-3" id="f-271" unitRef="usd">2663000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="c-9" decimals="-3" id="f-272" unitRef="usd">-1542000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c-1" decimals="-3" id="f-273" unitRef="usd">-6158000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="c-9" decimals="-3" id="f-274" unitRef="usd">3918000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities contextRef="c-1" decimals="-3" id="f-275" unitRef="usd">-9277000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities contextRef="c-9" decimals="-3" id="f-276" unitRef="usd">-5577000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet contextRef="c-1" decimals="-3" id="f-277" unitRef="usd">-295000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet contextRef="c-9" decimals="-3" id="f-278" unitRef="usd">-26000</us-gaap:IncreaseDecreaseInOtherOperatingCapitalNet>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c-1" decimals="-3" id="f-279" unitRef="usd">3935000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="c-9" decimals="-3" id="f-280" unitRef="usd">-13816000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-1" decimals="-3" id="f-281" unitRef="usd">17956000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="c-9" decimals="-3" id="f-282" unitRef="usd">15827000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-1" decimals="-3" id="f-283" unitRef="usd">19011000</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments contextRef="c-9" decimals="-3" id="f-284" unitRef="usd">0</us-gaap:ProceedsFromSaleMaturityAndCollectionsOfInvestments>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="c-1" decimals="-3" id="f-285" unitRef="usd">182000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment contextRef="c-9" decimals="-3" id="f-286" unitRef="usd">251000</us-gaap:ProceedsFromSaleOfPropertyPlantAndEquipment>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities contextRef="c-1" decimals="-3" id="f-287" unitRef="usd">-108000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:PaymentsForProceedsFromOtherInvestingActivities contextRef="c-9" decimals="-3" id="f-288" unitRef="usd">172000</us-gaap:PaymentsForProceedsFromOtherInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c-1" decimals="-3" id="f-289" unitRef="usd">1345000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="c-9" decimals="-3" id="f-290" unitRef="usd">-15748000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt contextRef="c-1" decimals="-3" id="f-291" unitRef="usd">96000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt contextRef="c-9" decimals="-3" id="f-292" unitRef="usd">184456000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt contextRef="c-1" decimals="-3" id="f-293" unitRef="usd">96000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt contextRef="c-9" decimals="-3" id="f-294" unitRef="usd">163215000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:FinanceLeasePrincipalPayments contextRef="c-1" decimals="-3" id="f-295" unitRef="usd">931000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments contextRef="c-9" decimals="-3" id="f-296" unitRef="usd">277000</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:PaymentsOfDebtIssuanceCosts contextRef="c-1" decimals="-3" id="f-297" unitRef="usd">0</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsOfDebtIssuanceCosts contextRef="c-9" decimals="-3" id="f-298" unitRef="usd">5277000</us-gaap:PaymentsOfDebtIssuanceCosts>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation contextRef="c-1" decimals="-3" id="f-299" unitRef="usd">1158000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation contextRef="c-9" decimals="-3" id="f-300" unitRef="usd">2339000</us-gaap:PaymentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c-1" decimals="-3" id="f-301" unitRef="usd">-2089000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="c-9" decimals="-3" id="f-302" unitRef="usd">13348000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-1" decimals="-3" id="f-303" unitRef="usd">651000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-9" decimals="-3" id="f-304" unitRef="usd">-330000</us-gaap:EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-1" decimals="-3" id="f-305" unitRef="usd">3842000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="c-9" decimals="-3" id="f-306" unitRef="usd">-16546000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-11" decimals="-3" id="f-307" unitRef="usd">37208000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-38" decimals="-3" id="f-308" unitRef="usd">52485000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-10" decimals="-3" id="f-309" unitRef="usd">41050000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-51" decimals="-3" id="f-310" unitRef="usd">35939000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-10" decimals="-3" id="f-311" unitRef="usd">41000000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="c-51" decimals="-3" id="f-312" unitRef="usd">35939000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue contextRef="c-10" decimals="-3" id="f-313" unitRef="usd">50000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue contextRef="c-51" decimals="-3" id="f-314" unitRef="usd">0</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-10" decimals="-3" id="f-315" unitRef="usd">41050000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents contextRef="c-51" decimals="-3" id="f-316" unitRef="usd">35939000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="c-1" id="f-317">ORGANIZATION, BASIS OF PRESENTATION, AND SIGNIFICANT ACCOUNTING POLICIES&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Organization&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;We are an energy services and solutions company with operations on six continents focused on developing environmentally conscious services and solutions that help make people's lives better. In &lt;/span&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;addition to providing products and services to the oil and gas industry and calcium chloride for diverse applications, TETRA is expanding into the low-carbon energy market with chemistry expertise, key mineral acreage, and global infrastructure, helping to meet the demand for sustainable energy in the twenty-first century. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;We were incorporated in Delaware in 1981. Our products and services are delivered through two reporting segments &#x2013; Completion Fluids &amp;amp; Products Division and Water &amp;amp; Flowback Services Division.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Our Completion Fluids &amp;amp; Products Division manufactures and markets clear brine fluids (&#x201c;CBFs&#x201d;), additives, and associated products and services to the oil and gas industry for use in well drilling, completion, and workover operations in the United States and in certain countries in Latin America, Europe, Asia, the Middle East, and Africa. The Division also markets liquid and dry calcium chloride products manufactured at its production facilities or purchased from third-party suppliers to a variety of markets outside the energy industry. Calcium chloride is used in the oil and gas industry, and also has broad industrial applications to the agricultural, road, food and beverage, and lithium production markets. Our Completion Fluids &amp;amp; Products Division also markets TETRA PureFlow,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:6.5pt;font-weight:400;line-height:112%;position:relative;top:-3.5pt;vertical-align:baseline"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;an ultra-pure zinc bromide, as well as TETRA PureFlow Plus, an ultra-pure zinc bromide/zinc chloride blend, to battery technology companies.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Our Water &amp;amp; Flowback Services Division provides onshore oil and gas operators with comprehensive water management services. The Division also provides frac flowback, production well testing, and other associated services in many of the major oil and gas producing regions in the United States, as well as in oil and gas basins in certain countries in Latin America, Europe, and the Middle East. We are also developing and pilot testing technologies to treat and desalinate produced water from oil wells for beneficial reuse, including surface discharge.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Unless the context requires otherwise, when we refer to &#x201c;we,&#x201d; &#x201c;us,&#x201d; and &#x201c;our,&#x201d; we are describing TETRA Technologies, Inc. and its subsidiaries on a consolidated basis.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Presentation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our unaudited consolidated financial statements include the accounts of our wholly owned or controlled subsidiaries. All intercompany balances and transactions have been eliminated in consolidation. The information furnished reflects all normal recurring adjustments, which are, in the opinion of management, necessary to provide a fair statement of the results for the interim periods. Operating results for the period ended March&#160;31, 2025 are not necessarily indicative of results that may be expected for the twelve months ended December&#160;31, 2025.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying unaudited consolidated financial statements have been prepared in accordance with Rule 10-01 of Regulation S-X for interim financial statements required to be filed with the U.S. Securities and Exchange Commission (&#x201c;SEC&#x201d;) and do not include all information and footnotes required by U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;) for complete financial statements. These financial statements should be read in conjunction with the financial statements for the year ended December&#160;31, 2024 and notes thereto included in our Annual Report on Form 10-K filed with the Securities and Exchange Commission on February&#160;25,&#160;2025 (the &#x201c;&lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;202&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;4&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt; Annual Report&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Discontinued Operations&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In early 2018, we closed a series of related transactions that resulted in the disposition of our former Offshore segment. Our former Offshore segment is reported as discontinued operations for all periods presented. We may be required to satisfy certain decommissioning liabilities under third-party indemnity agreements and corporate guarantees for which costs may be significant. During the three months ended September 30, 2024, we accrued $5.8&#160;million of decommissioning expense and liability associated with our former Offshore segment for which costs might be above the value of surety bonds on properties previously disposed. See Note 6 - &#x201c;Commitments and Contingencies&#x201d; for additional discussion of contingencies related to discontinued operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:112%"&gt;Significant Accounting Policies&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our significant accounting policies are described in the notes to our consolidated financial statements for the year ended December&#160;31, 2024 included in our &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;202&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;4&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt; Annual Report&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;. Other than reporting restricted cash as described below, there have been no significant changes in our accounting policies or the application thereof during the first quarter of 2025.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Out-of-Period Correction&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;During the three months ended March&#160;31, 2025, we recorded an adjustment to our deferred tax liability related to a correction to our 2024 tax provision. This adjustment increased income tax benefit by $1.2&#160;million and increased net income per share attributable to TETRA stockholders by $0.01 in the consolidated statement of operations for the three months ended March 31, 2025. The Company assessed the impact of this out-of-period adjustment and concluded that it was not material to the financial statements previously issued for any interim or annual period, and the adjustment during the quarter ended March 31, 2025 is not expected to be material to the annual financial statements for 2025.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Cash&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Restricted cash is classified as a current asset when it is expected to be repaid or settled in the next twelve-month period. In connection with the May 2024 amendment to our ABL Credit Agreement, our former administrative agent required us to collateralize our outstanding letters of credit until the letters of credit expired in March 2025. Restricted cash as of March&#160;31, 2025 consists of less than $0.1&#160;million held in escrow in connection with our Arkansas development.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues, expenses, and impairments during the reporting period. Actual results could differ from those estimates, and such differences could be&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;material.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Mineral Resources Arrangement&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have rights to the brine underlying our approximately 40,000 gross acres of brine leases in the Smackover Formation in Southwest Arkansas, including rights to the bromine and lithium contained in the brine. In June 2023, we entered into a memorandum of understanding (&#x201c;MOU&#x201d;) with Saltwerx LLC (&#x201c;Saltwerx&#x201d;), an indirect wholly owned subsidiary of ExxonMobil Corporation, relating to the Evergreen Unit, and potential bromine and lithium production from brine produced from the unit. We completed an initial preliminary economic assessment in early 2023 for the extraction of the brine and for a bromine processing plant. On January 8, 2024, we announced the completion of a technical resources report for the Evergreen Unit in Arkansas. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, we capitalized approximately $11.2&#160;million and $4.1&#160;million, respectively, of costs associated with the development of our properties in Arkansas.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency Translation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have designated the Euro, the British pound, the Canadian dollar, the&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Brazilian real as the functional currencies for our operations in Finland and Sweden, the United Kingdom, Canada and Brazil, respectively. The United States dollar is the designated functional currency for most of our other non-U.S. operations. The cumulative translation effects of translating the applicable accounts from the functional currencies into the United States dollar at current exchange rates are included as a separate component of&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;equity. Foreign currency exchange (gains) losses are included in other (income) expense, net and totaled $8.8&#160;million and $(0.2)&#160;million during the three months ended March&#160;31, 2025 and March&#160;31, 2024, respectively. Foreign currency exchange losses during the three months ended March&#160;31, 2025 include recognition of a $9.5 million cumulative foreign currency translation adjustment loss, which was reclassified from accumulated other comprehensive loss due to the dissolution of our former subsidiary in Canada during the three months ended March&#160;31, 2025.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We utilize fair value measurements to account for certain items and account balances within our consolidated financial statements. Fair value measurements are utilized on a recurring basis in the determination of the carrying values of certain investments. See Note 7 - &#x201c;Fair Value Measurements&#x201d; for further discussion. Fair value measurements are also utilized on a nonrecurring basis in certain circumstances, including the impairment of long-lived assets (a Level 3 fair value measurement).&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Supplemental Cash Flow Information&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.443%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.446%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income taxes paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,292&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;New Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Standards not yet adopted&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In November 2024, the FASB issued Accounting Standards Update (&#x201c;ASU&#x201d;) 2024-03, &#x201c;Income Statement&#x2013;Reporting Comprehensive Income&#x2013;Expense Disaggregation Disclosures (Subtopic 220-40)&#x201d; ("ASU 2024-03"). ASU 2024-03 requires additional disclosures about certain expenses included in the income statement, including purchases of inventory, employee compensation, intangible asset amortization and depreciation. ASU 2024-03 is effective for annual periods beginning after December 15, 2026 and interim reporting periods beginning after December 15, 2027 with early adoption permitted. The Company is currently evaluating the impact of ASU 2024-03 on its financial statements and related disclosures&lt;/span&gt;&lt;span style="color:#000000;font-family:'Aptos',san-serif;font-size:12pt;font-weight:400;line-height:115%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In December 2023, the FASB issued ASU 2023-09, &#x201c;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#x201d; The new standard requires companies to disclose specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 is effective for annual reporting periods beginning after December 15, 2024, with early adoption permitted.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company is currently evaluating the expected impact of these standards but does not expect them to have a significant impact on its consolidated financial statements upon adoption as the standards expand disclosures only.&lt;/span&gt;&lt;/div&gt;</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:NumberOfReportableSegments
      contextRef="c-1"
      decimals="INF"
      id="f-318"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy contextRef="c-1" id="f-319">&lt;div style="padding-left:2.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Presentation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our unaudited consolidated financial statements include the accounts of our wholly owned or controlled subsidiaries. All intercompany balances and transactions have been eliminated in consolidation. The information furnished reflects all normal recurring adjustments, which are, in the opinion of management, necessary to provide a fair statement of the results for the interim periods. Operating results for the period ended March&#160;31, 2025 are not necessarily indicative of results that may be expected for the twelve months ended December&#160;31, 2025.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The accompanying unaudited consolidated financial statements have been prepared in accordance with Rule 10-01 of Regulation S-X for interim financial statements required to be filed with the U.S. Securities and Exchange Commission (&#x201c;SEC&#x201d;) and do not include all information and footnotes required by U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;) for complete financial statements. These financial statements should be read in conjunction with the financial statements for the year ended December&#160;31, 2024 and notes thereto included in our Annual Report on Form 10-K filed with the Securities and Exchange Commission on February&#160;25,&#160;2025 (the &#x201c;&lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;202&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt;4&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline"&gt; Annual Report&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#x201d;).&lt;/span&gt;&lt;/div&gt;</us-gaap:ConsolidationSubsidiariesOrOtherInvestmentsConsolidatedEntitiesPolicy>
    <us-gaap:DiscontinuedOperationsPolicyTextBlock contextRef="c-1" id="f-320">&lt;div style="padding-left:2.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Discontinued Operations&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In early 2018, we closed a series of related transactions that resulted in the disposition of our former Offshore segment. Our former Offshore segment is reported as discontinued operations for all periods presented. We may be required to satisfy certain decommissioning liabilities under third-party indemnity agreements and corporate guarantees for which costs may be significant. During the three months ended September 30, 2024, we accrued $5.8&#160;million of decommissioning expense and liability associated with our former Offshore segment for which costs might be above the value of surety bonds on properties previously disposed. See Note 6 - &#x201c;Commitments and Contingencies&#x201d; for additional discussion of contingencies related to discontinued operations.&lt;/span&gt;&lt;/div&gt;</us-gaap:DiscontinuedOperationsPolicyTextBlock>
    <tti:DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense contextRef="c-52" decimals="-5" id="f-321" unitRef="usd">5800000</tti:DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="c-53" decimals="-5" id="f-322" unitRef="usd">-1200000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:EarningsPerShareBasic
      contextRef="c-53"
      decimals="2"
      id="f-323"
      unitRef="usdPerShare">0.01</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="c-53"
      decimals="2"
      id="f-324"
      unitRef="usdPerShare">0.01</us-gaap:EarningsPerShareDiluted>
    <us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy contextRef="c-1" id="f-325">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Restricted Cash&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Restricted cash is classified as a current asset when it is expected to be repaid or settled in the next twelve-month period. In connection with the May 2024 amendment to our ABL Credit Agreement, our former administrative agent required us to collateralize our outstanding letters of credit until the letters of credit expired in March 2025. Restricted cash as of March&#160;31, 2025 consists of less than $0.1&#160;million held in escrow in connection with our Arkansas development.&lt;/span&gt;&lt;/div&gt;</us-gaap:CashAndCashEquivalentsRestrictedCashAndCashEquivalentsPolicy>
    <us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue contextRef="c-54" decimals="-5" id="f-326" unitRef="usd">100000</us-gaap:RestrictedCashAndCashEquivalentsAtCarryingValue>
    <us-gaap:UseOfEstimates contextRef="c-1" id="f-327">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The preparation of financial statements in conformity with U.S. GAAP requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclose contingent assets and liabilities at the date of the financial statements and the reported amounts of revenues, expenses, and impairments during the reporting period. Actual results could differ from those estimates, and such differences could be&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;material.&lt;/span&gt;&lt;/div&gt;</us-gaap:UseOfEstimates>
    <tti:MineralResourcesArrangementsPolicyTextBlock contextRef="c-1" id="f-328">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Mineral Resources Arrangement&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have rights to the brine underlying our approximately 40,000 gross acres of brine leases in the Smackover Formation in Southwest Arkansas, including rights to the bromine and lithium contained in the brine. In June 2023, we entered into a memorandum of understanding (&#x201c;MOU&#x201d;) with Saltwerx LLC (&#x201c;Saltwerx&#x201d;), an indirect wholly owned subsidiary of ExxonMobil Corporation, relating to the Evergreen Unit, and potential bromine and lithium production from brine produced from the unit. We completed an initial preliminary economic assessment in early 2023 for the extraction of the brine and for a bromine processing plant. On January 8, 2024, we announced the completion of a technical resources report for the Evergreen Unit in Arkansas. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, we capitalized approximately $11.2&#160;million and $4.1&#160;million, respectively, of costs associated with the development of our properties in Arkansas.&lt;/span&gt;&lt;/div&gt;</tti:MineralResourcesArrangementsPolicyTextBlock>
    <tti:GrossBrineLeaseAcres contextRef="c-10" decimals="-3" id="f-329" unitRef="acre">40000</tti:GrossBrineLeaseAcres>
    <us-gaap:RecapitalizationCosts contextRef="c-1" decimals="-5" id="f-330" unitRef="usd">11200000</us-gaap:RecapitalizationCosts>
    <us-gaap:RecapitalizationCosts contextRef="c-9" decimals="-5" id="f-331" unitRef="usd">4100000</us-gaap:RecapitalizationCosts>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="c-1" id="f-332">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Foreign Currency Translation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We have designated the Euro, the British pound, the Canadian dollar, the&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Brazilian real as the functional currencies for our operations in Finland and Sweden, the United Kingdom, Canada and Brazil, respectively. The United States dollar is the designated functional currency for most of our other non-U.S. operations. The cumulative translation effects of translating the applicable accounts from the functional currencies into the United States dollar at current exchange rates are included as a separate component of&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;equity. Foreign currency exchange (gains) losses are included in other (income) expense, net and totaled $8.8&#160;million and $(0.2)&#160;million during the three months ended March&#160;31, 2025 and March&#160;31, 2024, respectively. Foreign currency exchange losses during the three months ended March&#160;31, 2025 include recognition of a $9.5 million cumulative foreign currency translation adjustment loss, which was reclassified from accumulated other comprehensive loss due to the dissolution of our former subsidiary in Canada during the three months ended March&#160;31, 2025.&lt;/span&gt;&lt;/div&gt;</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:ForeignCurrencyTransactionGainLossRealized contextRef="c-1" decimals="-5" id="f-333" unitRef="usd">-8800000</us-gaap:ForeignCurrencyTransactionGainLossRealized>
    <us-gaap:ForeignCurrencyTransactionGainLossRealized contextRef="c-9" decimals="-5" id="f-334" unitRef="usd">200000</us-gaap:ForeignCurrencyTransactionGainLossRealized>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax contextRef="c-1" decimals="-5" id="f-335" unitRef="usd">-9500000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationReclassificationAdjustmentFromAOCIRealizedUponSaleOrLiquidationNetOfTax>
    <us-gaap:FairValueOfFinancialInstrumentsPolicy contextRef="c-1" id="f-336">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We utilize fair value measurements to account for certain items and account balances within our consolidated financial statements. Fair value measurements are utilized on a recurring basis in the determination of the carrying values of certain investments. See Note 7 - &#x201c;Fair Value Measurements&#x201d; for further discussion. Fair value measurements are also utilized on a nonrecurring basis in certain circumstances, including the impairment of long-lived assets (a Level 3 fair value measurement).&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueOfFinancialInstrumentsPolicy>
    <us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock contextRef="c-1" id="f-337">&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Supplemental cash flow information is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.443%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.446%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,999&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Income taxes paid&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;3,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:12pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Accrued capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,292&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,131&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfCashFlowSupplementalDisclosuresTableTextBlock>
    <us-gaap:InterestPaidNet contextRef="c-1" decimals="-3" id="f-338" unitRef="usd">4999000</us-gaap:InterestPaidNet>
    <us-gaap:InterestPaidNet contextRef="c-9" decimals="-3" id="f-339" unitRef="usd">5406000</us-gaap:InterestPaidNet>
    <us-gaap:IncomeTaxesPaid contextRef="c-1" decimals="-3" id="f-340" unitRef="usd">3360000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid contextRef="c-9" decimals="-3" id="f-341" unitRef="usd">433000</us-gaap:IncomeTaxesPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid contextRef="c-1" decimals="-3" id="f-342" unitRef="usd">5292000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:CapitalExpendituresIncurredButNotYetPaid contextRef="c-55" decimals="-3" id="f-343" unitRef="usd">7131000</us-gaap:CapitalExpendituresIncurredButNotYetPaid>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="c-1" id="f-344">&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;New Accounting Pronouncements&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Standards not yet adopted&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In November 2024, the FASB issued Accounting Standards Update (&#x201c;ASU&#x201d;) 2024-03, &#x201c;Income Statement&#x2013;Reporting Comprehensive Income&#x2013;Expense Disaggregation Disclosures (Subtopic 220-40)&#x201d; ("ASU 2024-03"). ASU 2024-03 requires additional disclosures about certain expenses included in the income statement, including purchases of inventory, employee compensation, intangible asset amortization and depreciation. ASU 2024-03 is effective for annual periods beginning after December 15, 2026 and interim reporting periods beginning after December 15, 2027 with early adoption permitted. The Company is currently evaluating the impact of ASU 2024-03 on its financial statements and related disclosures&lt;/span&gt;&lt;span style="color:#000000;font-family:'Aptos',san-serif;font-size:12pt;font-weight:400;line-height:115%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;In December 2023, the FASB issued ASU 2023-09, &#x201c;Income Taxes (Topic 740): Improvements to Income Tax Disclosures.&#x201d; The new standard requires companies to disclose specific categories in the income tax rate reconciliation and provide additional information for reconciling items that meet a quantitative threshold. ASU 2023-09 is effective for annual reporting periods beginning after December 15, 2024, with early adoption permitted.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company is currently evaluating the expected impact of these standards but does not expect them to have a significant impact on its consolidated financial statements upon adoption as the standards expand disclosures only.&lt;/span&gt;&lt;/div&gt;</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="c-1" id="f-345">REVENUE&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Revenue from Contracts with Customers&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our contract asset balances, primarily associated with contractual invoicing milestones and/or customer documentation requirements, were $26.3&#160;million and $30.4 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively. Contract assets, along with billed trade accounts receivable, are included in trade accounts receivable in our consolidated balance sheets.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Unearned income includes amounts in which the Company was contractually allowed to invoice prior to satisfying the associated performance obligations. Unearned income balances were $0.6&#160;million and $0.4&#160;million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and vary based on the timing of invoicing and performance obligations being met. Unearned income is included in accrued liabilities and other in our consolidated balance sheets. We recognized approximately $0.1&#160;million and $0.1&#160;million during the three months ended &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;March&#160;31, 2025 and March&#160;31, 2024, respectively, deferred in unearned income as of the beginning of the period. During the three months ended March&#160;31, 2025 and March&#160;31, 2024, contract costs were not significant.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We disaggregate revenue from contracts with customers into Product Sales and Services within each segment, as noted in our two reportable segments in Note 9 - &#x201c;Industry Segments.&#x201d; In addition, we disaggregate revenue from contracts with customers by geography based on the following table below.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.469%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.471%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Completion Fluids &amp;amp; Products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,874&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,845&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;93,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;77,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Water &amp;amp; Flowback Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;64,711&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,244&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;64,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;73,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;117,022&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;157,140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;150,972&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:ContractWithCustomerAssetNetCurrent contextRef="c-10" decimals="-5" id="f-346" unitRef="usd">26300000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerAssetNetCurrent contextRef="c-11" decimals="-5" id="f-347" unitRef="usd">30400000</us-gaap:ContractWithCustomerAssetNetCurrent>
    <us-gaap:ContractWithCustomerLiability contextRef="c-10" decimals="-5" id="f-348" unitRef="usd">600000</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability contextRef="c-11" decimals="-5" id="f-349" unitRef="usd">400000</us-gaap:ContractWithCustomerLiability>
    <tti:ContractWithCustomerLiabilityRevenueRecognizedNet contextRef="c-1" decimals="-5" id="f-350" unitRef="usd">100000</tti:ContractWithCustomerLiabilityRevenueRecognizedNet>
    <tti:ContractWithCustomerLiabilityRevenueRecognizedNet contextRef="c-9" decimals="-5" id="f-351" unitRef="usd">100000</tti:ContractWithCustomerLiabilityRevenueRecognizedNet>
    <us-gaap:NumberOfReportableSegments
      contextRef="c-1"
      decimals="INF"
      id="f-352"
      unitRef="segment">2</us-gaap:NumberOfReportableSegments>
    <us-gaap:DisaggregationOfRevenueTableTextBlock contextRef="c-1" id="f-353">In addition, we disaggregate revenue from contracts with customers by geography based on the following table below.&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.469%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.471%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Completion Fluids &amp;amp; Products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;61,144&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;41,437&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;31,874&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;35,845&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;93,018&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;77,282&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Water &amp;amp; Flowback Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;55,878&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;64,711&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,244&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,979&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;64,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;73,690&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total Revenue&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;United States&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;117,022&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;International&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;40,118&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;44,824&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;157,140&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;150,972&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:DisaggregationOfRevenueTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-56" decimals="-3" id="f-354" unitRef="usd">61144000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-57" decimals="-3" id="f-355" unitRef="usd">41437000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-58" decimals="-3" id="f-356" unitRef="usd">31874000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-59" decimals="-3" id="f-357" unitRef="usd">35845000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-60" decimals="-3" id="f-358" unitRef="usd">93018000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-61" decimals="-3" id="f-359" unitRef="usd">77282000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-62" decimals="-3" id="f-360" unitRef="usd">55878000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-63" decimals="-3" id="f-361" unitRef="usd">64711000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-64" decimals="-3" id="f-362" unitRef="usd">8244000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-65" decimals="-3" id="f-363" unitRef="usd">8979000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-66" decimals="-3" id="f-364" unitRef="usd">64122000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-67" decimals="-3" id="f-365" unitRef="usd">73690000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-68" decimals="-3" id="f-366" unitRef="usd">117022000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-69" decimals="-3" id="f-367" unitRef="usd">106148000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-70" decimals="-3" id="f-368" unitRef="usd">40118000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-71" decimals="-3" id="f-369" unitRef="usd">44824000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-1" decimals="-3" id="f-370" unitRef="usd">157140000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-9" decimals="-3" id="f-371" unitRef="usd">150972000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:InventoryDisclosureTextBlock contextRef="c-1" id="f-372">INVENTORIES&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of inventories as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.443%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.446%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;89,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;90,919&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,023&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Parts and supplies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total inventories&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;101,697&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;Finished goods inventories include newly manufactured clear brine fluids as well as used brines that are repurchased from certain customers for recycling</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="c-1" id="f-373">&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Components of inventories as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.081%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.443%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.446%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;89,804&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;90,919&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,023&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,599&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Parts and supplies&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,681&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Work in progress&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,978&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,882&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total inventories&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;106,486&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;101,697&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoods contextRef="c-10" decimals="-3" id="f-374" unitRef="usd">89804000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryFinishedGoods contextRef="c-11" decimals="-3" id="f-375" unitRef="usd">90919000</us-gaap:InventoryFinishedGoods>
    <us-gaap:InventoryRawMaterials contextRef="c-10" decimals="-3" id="f-376" unitRef="usd">7023000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials contextRef="c-11" decimals="-3" id="f-377" unitRef="usd">1599000</us-gaap:InventoryRawMaterials>
    <us-gaap:OtherInventorySupplies contextRef="c-10" decimals="-3" id="f-378" unitRef="usd">7681000</us-gaap:OtherInventorySupplies>
    <us-gaap:OtherInventorySupplies contextRef="c-11" decimals="-3" id="f-379" unitRef="usd">7297000</us-gaap:OtherInventorySupplies>
    <us-gaap:InventoryWorkInProcess contextRef="c-10" decimals="-3" id="f-380" unitRef="usd">1978000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess contextRef="c-11" decimals="-3" id="f-381" unitRef="usd">1882000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryNet contextRef="c-10" decimals="-3" id="f-382" unitRef="usd">106486000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="c-11" decimals="-3" id="f-383" unitRef="usd">101697000</us-gaap:InventoryNet>
    <us-gaap:InvestmentTextBlock contextRef="c-1" id="f-384">INVESTMENTS&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our investments as of March&#160;31, 2025 and December&#160;31, 2024 consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:62.710%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.625%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.538%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.627%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Kodiak&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Standard Lithium&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Investments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2025, we sold our Kodiak Gas Services, Inc. &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;(NYSE: KGS) (&#x201c;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Kodiak&#x201d;) shares for proceeds of $19.0&#160;million, net of transaction and broker fees. During the three months ended March&#160;31, 2025, we recorded a net gain of $0.6&#160;million from the sale of our Kodiak shares.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition, we are party to agreements whereby Standard Lithium has the right to explore for, and an option to acquire the rights to produce and extract, lithium in our Arkansas leases and other additional potential resources in the Mojave region of California. The Company received stock of Standard Lithium under the terms of the arrangements.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:107%"&gt;We also hold investments in convertible notes, common units and preferred units issued by two privately-held companies. These convertible notes, common units and preferred units are not publicly traded and may not be offered, sold, transferred or pledged until such common units are registered pursuant to an effective registration statement or pursuant to an exemption from registration. Our exposure to potential losses is limited to our investments, including capitalized and accrued interest associated with the convertible notes.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;See Note 7 - &#x201c;Fair Value Measurements&#x201d; for further information.&lt;/span&gt;&lt;/div&gt;</us-gaap:InvestmentTextBlock>
    <us-gaap:InvestmentsInAndAdvancesToAffiliatesTextBlock contextRef="c-1" id="f-385">&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our investments as of March&#160;31, 2025 and December&#160;31, 2024 consist of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:62.710%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.625%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.538%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.627%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Kodiak&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Standard Lithium&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total Investments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InvestmentsInAndAdvancesToAffiliatesTextBlock>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-72" decimals="-3" id="f-386" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-73" decimals="-3" id="f-387" unitRef="usd">18393000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-74" decimals="-3" id="f-388" unitRef="usd">1016000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-75" decimals="-3" id="f-389" unitRef="usd">1168000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-76" decimals="-3" id="f-390" unitRef="usd">8670000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-77" decimals="-3" id="f-391" unitRef="usd">8598000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-10" decimals="-3" id="f-392" unitRef="usd">9686000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-11" decimals="-3" id="f-393" unitRef="usd">28159000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:ProceedsFromSaleOfEquitySecuritiesFvNi contextRef="c-78" decimals="-5" id="f-394" unitRef="usd">19000000</us-gaap:ProceedsFromSaleOfEquitySecuritiesFvNi>
    <us-gaap:GainLossOnSaleOfInvestments contextRef="c-79" decimals="-5" id="f-395" unitRef="usd">600000</us-gaap:GainLossOnSaleOfInvestments>
    <us-gaap:DebtDisclosureTextBlock contextRef="c-1" id="f-396">LONG-TERM DEBT AND OTHER BORROWINGS&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Consolidated long-term debt as of March&#160;31, 2025 and December&#160;31, 2024 consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:43.636%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.882%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.443%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.449%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Scheduled Maturity&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Term Credit Agreement&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;January 1, 2030&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;180,095&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;179,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;180,095&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;179,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt; Net of unamortized discount of $4.8&#160;million and $5.0 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and net of unamortized deferred financing costs of $5.1 million and $5.3 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Term Credit Agreement&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Pricing on the Term Credit Agreement is the secured overnight financing rate (&#x201c;SOFR&#x201d;) plus 5.75%. The interest rate per annum on borrowings under the Term Credit Agreement is 10.17% as of March&#160;31, 2025 and the maturity date of the Term Credit Agreement is January&#160;1, 2030. The Term Credit Agreement includes a $75 million delayed-draw term loan available until January 12, 2026 to provide capital to advance our Arkansas bromine processing project. The Company is required to pay a commitment fee on the unutilized commitments with respect to the delayed-draw term loan at the rate of 1.5% per annum.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Term Credit Agreement contains certain affirmative and negative covenants, including covenants that restrict the ability of the Company and certain of its subsidiaries to take certain actions including, among other things and subject to certain significant exceptions, the incurrence of debt, the granting of liens, engaging in mergers and other fundamental changes, the making of investments, entering into transactions with affiliates, the payment of dividends and other restricted payments, the prepayment of other indebtedness and the sale of assets. The Term Credit Agreement also requires the Company to maintain a Leverage Ratio (as defined in the Term Credit Agreement) of not more than 4.0 to 1.0 as of the end of each fiscal quarter and Liquidity (as defined in the Term Credit Agreement) of not less than $50.0&#160;million at all times.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;All obligations under the Term Credit Agreement and the guarantees of those obligations are secured, subject to certain exceptions, by a security interest on substantially all of the property of the Company and its domestic subsidiaries, subject to the lien priorities set forth in the intercreditor agreement with the agent under our ABL Credit Agreement.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our Term Credit Agreement requires us to offer to prepay a percentage of Excess Cash Flow (as defined in the Term Credit Agreement) within five business days of filing our Annual Report.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Term Credit Agreement includes customary events of default including non-payment of principal, interest or fees, violation of covenants, inaccuracy of representations or warranties, cross-default to other material indebtedness, bankruptcy and insolvency events, invalidity or impairment of security interests or invalidity of loan documents, certain ERISA events, unsatisfied or unstayed judgments and change of control.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;ABL Credit Agreement&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;As of March&#160;31, 2025, we had no borrowings outstanding and $0.2&#160;million letters of credit or guarantees&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;under our ABL Credit Agreement. Deferred financing costs of&#160;$1.0&#160;million&#160;and $1.0&#160;million as of&#160;March&#160;31, 2025 and December&#160;31, 2024, respectively, were classified as other long-term assets on the accompanying consolidated balance sheet as there was no outstanding balance on our ABL Credit Agreement. As of March&#160;31, 2025, our ABL Credit Agreement provides, with certain restrictions, for a senior secured revolving credit facility of up to $100.0&#160;million with a $25.0&#160;million accordion. The credit facility is subject to a borrowing base determined monthly by reference to the value of inventory and accounts receivable, and includes a sublimit of $20.0&#160;million for letters of credit, and a swingline loan sublimit of $11.5&#160;million. The ABL Credit Agreement matures on May&#160;13, 2029. Subject to compliance with the covenants, borrowing base, and other provisions of the ABL Credit Agreement that may limit borrowings, we had availability of $87.1&#160;million under this agreement.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Borrowings under the ABL Credit Agreement bear interest at a rate per annum equal to, at the option of TETRA, either (i) the standard overnight financing rate plus 0.10%, (ii) a base rate plus a margin based on a fixed charge coverage ratio, or (iii) the Daily Simple Risk Free Rate plus 0.10%. The base rate is determined by reference to the highest of (a) the prime rate of interest as announced from time to time by Bank of America, N.A. (b) the Federal Funds Effective Rate (as defined in the ABL Credit Agreement) plus 0.5% per annum and (c) the standard overnight financing rate (adjusted to reflect any required bank reserves) for a one-month period on such day plus 1.0% per annum, provided that the base rate shall not be less than 1.0%. Borrowings outstanding have an applicable margin ranging from 2.00% to 2.50% per annum for SOFR-based loans and 1.00% to 1.50% per annum for base-rate loans, based upon the applicable fixed charge coverage ratio. In addition to paying interest on the outstanding principal under the ABL Credit Agreement, TETRA is required to pay a commitment fee in respect of the unutilized commitments at an applicable rate of 0.375% per annum. TETRA is also required to pay a customary letter of credit fee equal to the applicable margin on loans and fronting fees.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;&#160;&#160;&#160;&#160; All obligations under the ABL Credit Agreement and the guarantees of those obligations are secured, subject to certain exceptions, by a security interest for the benefit of the ABL Lenders on substantially all of the personal property of TETRA and certain subsidiaries of TETRA, the equity interests in certain domestic subsidiaries, and a maximum of 65% of the equity interests in certain foreign subsidiaries.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Swedish Credit Facility&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2022, the Company entered into a revolving credit facility for seasonal working capital needs of subsidiaries in Sweden (&#x201c;Swedish Credit Facility&#x201d;). As of March&#160;31, 2025, we had no balance outstanding and availability of approximately $5.0&#160;million under the Swedish Credit Facility. During each year, all outstanding loans under the Swedish Credit Facility must be repaid for at least 30 consecutive days. Borrowings bear interest at a rate of 2.95% per annum. The Swedish Credit Facility expires on December 31, 2025 and the Company intends to renew it annually.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Finland Credit Agreement&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In January 2022, the Company also entered into an agreement guaranteed by certain accounts receivable and inventory in Finland (&#x201c;Finland Credit Agreement&#x201d;). As of March&#160;31, 2025, there were $1.5&#160;million of letters of credit outstanding against the Finland Credit Agreement. The Finland Credit Agreement expires on January 31, 2026 and the Company intends to renew it annually.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Covenants&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our credit agreements contain certain affirmative and negative covenants, including covenants that restrict the ability to pay dividends or other restricted payments. As of March&#160;31, 2025, we are in compliance with all covenants under the credit agreements.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtTableTextBlock contextRef="c-1" id="f-397">&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Consolidated long-term debt as of March&#160;31, 2025 and December&#160;31, 2024 consists of the following:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:43.636%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.882%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.443%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.449%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Scheduled Maturity&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:3pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Term Credit Agreement&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;January 1, 2030&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;180,095&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;179,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 6.25pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Total long-term debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;180,095&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;179,696&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:3pt;text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline"&gt;(1)&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:120%"&gt; Net of unamortized discount of $4.8&#160;million and $5.0 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively, and net of unamortized deferred financing costs of $5.1 million and $5.3 million as of March&#160;31, 2025 and December&#160;31, 2024, respectively.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:LongTermDebtNoncurrent contextRef="c-80" decimals="-3" id="f-398" unitRef="usd">180095000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="c-81" decimals="-3" id="f-399" unitRef="usd">179696000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="c-10" decimals="-3" id="f-400" unitRef="usd">180095000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent contextRef="c-11" decimals="-3" id="f-401" unitRef="usd">179696000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet contextRef="c-80" decimals="-5" id="f-402" unitRef="usd">4800000</us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet>
    <us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet contextRef="c-81" decimals="-5" id="f-403" unitRef="usd">5000000.0</us-gaap:DebtInstrumentUnamortizedDiscountPremiumNet>
    <us-gaap:UnamortizedDebtIssuanceExpense contextRef="c-80" decimals="-5" id="f-404" unitRef="usd">5100000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:UnamortizedDebtIssuanceExpense contextRef="c-81" decimals="-5" id="f-405" unitRef="usd">5300000</us-gaap:UnamortizedDebtIssuanceExpense>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-82" decimals="4" id="f-406" unitRef="number">0.0575</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage contextRef="c-80" decimals="4" id="f-407" unitRef="number">0.1017</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity contextRef="c-83" decimals="INF" id="f-408" unitRef="usd">75000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage contextRef="c-84" decimals="3" id="f-409" unitRef="number">0.015</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <tti:DebtInstrumentCovenantLeverageRatioMaximum
      contextRef="c-85"
      decimals="INF"
      id="f-410"
      unitRef="number">4.0</tti:DebtInstrumentCovenantLeverageRatioMaximum>
    <tti:DebtInstrumentCovenantLiquidityMinimumAmount contextRef="c-85" decimals="INF" id="f-411" unitRef="usd">50000000</tti:DebtInstrumentCovenantLiquidityMinimumAmount>
    <us-gaap:LineOfCredit contextRef="c-86" decimals="INF" id="f-412" unitRef="usd">0</us-gaap:LineOfCredit>
    <us-gaap:LettersOfCreditOutstandingAmount contextRef="c-86" decimals="-5" id="f-413" unitRef="usd">200000</us-gaap:LettersOfCreditOutstandingAmount>
    <us-gaap:OtherDeferredCostsNet contextRef="c-86" decimals="-5" id="f-414" unitRef="usd">1000000</us-gaap:OtherDeferredCostsNet>
    <us-gaap:OtherDeferredCostsNet contextRef="c-87" decimals="-5" id="f-415" unitRef="usd">1000000</us-gaap:OtherDeferredCostsNet>
    <us-gaap:LineOfCredit contextRef="c-86" decimals="INF" id="f-416" unitRef="usd">0</us-gaap:LineOfCredit>
    <us-gaap:LineOfCredit contextRef="c-87" decimals="INF" id="f-417" unitRef="usd">0</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity contextRef="c-86" decimals="INF" id="f-418" unitRef="usd">100000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <tti:LineOfCreditFacilityAdditionalBorrowingCapacity contextRef="c-86" decimals="-5" id="f-419" unitRef="usd">25000000</tti:LineOfCreditFacilityAdditionalBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity contextRef="c-88" decimals="-5" id="f-420" unitRef="usd">20000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity contextRef="c-89" decimals="-5" id="f-421" unitRef="usd">11500000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity contextRef="c-86" decimals="-5" id="f-422" unitRef="usd">87100000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-90" decimals="4" id="f-423" unitRef="number">0.0010</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-91" decimals="4" id="f-424" unitRef="number">0.0010</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-92" decimals="3" id="f-425" unitRef="number">0.005</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-93" decimals="3" id="f-426" unitRef="number">0.010</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-93" decimals="3" id="f-427" unitRef="number">0.010</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-94" decimals="4" id="f-428" unitRef="number">0.0200</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-95" decimals="4" id="f-429" unitRef="number">0.0250</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-96" decimals="4" id="f-430" unitRef="number">0.0100</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1 contextRef="c-97" decimals="4" id="f-431" unitRef="number">0.0150</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage contextRef="c-98" decimals="5" id="f-432" unitRef="number">0.00375</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <tti:DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries
      contextRef="c-86"
      decimals="INF"
      id="f-433"
      unitRef="number">0.65</tti:DebtInstrumentCollateralPercentageOfEquityInterestInCertainForeignSubsidiaries>
    <us-gaap:LineOfCredit contextRef="c-99" decimals="INF" id="f-434" unitRef="usd">0</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity contextRef="c-99" decimals="-5" id="f-435" unitRef="usd">5000000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:DebtInstrumentTerm contextRef="c-100" id="f-436">P30D</us-gaap:DebtInstrumentTerm>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage contextRef="c-99" decimals="4" id="f-437" unitRef="number">0.0295</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LineOfCredit contextRef="c-101" decimals="-5" id="f-438" unitRef="usd">1500000</us-gaap:LineOfCredit>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="c-1" id="f-439">COMMITMENTS AND CONTINGENCIES&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Litigation&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We are named defendants in several lawsuits and respondents in certain governmental proceedings arising in the ordinary course of business. While the outcome of lawsuits or other proceedings against us cannot be predicted with certainty, management does not consider it reasonably possible that a loss resulting from such lawsuits or other proceedings in excess of any amounts accrued has been incurred that is expected to have a material adverse impact on our financial condition, results of operations, or liquidity.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;There have been no material developments in our legal proceedings during the quarter ended March&#160;31, 2025. For additional discussion of our legal proceedings, please see our &lt;/span&gt;&lt;span style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline"&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline"&gt;202&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline"&gt;4&lt;/a&gt;&lt;a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/0000844965/000084496525000013/tti-20241231.htm" style="color:#0000ff;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%;text-decoration:underline"&gt; Annual Report&lt;/a&gt;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Product Purchase Obligations&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In the normal course of our Completion Fluids &amp;amp; Products Division operations, we enter into supply agreements with certain manufacturers of various raw materials and finished products. Some of these agreements have terms and conditions that specify a minimum or maximum level of purchases over the term of the agreement. Other agreements require us to purchase the entire output of the raw material or finished product produced by the manufacturer. Our purchase obligations under these agreements apply only with regard to raw materials and finished products that meet specifications set forth in the agreements. We recognize a liability for the purchase of such products at the time we receive them. As of March&#160;31, 2025, the aggregate amount of the fixed and determinable portion of the purchase obligation pursuant to our Completion Fluids &amp;amp; Products Division&#x2019;s supply agreements was approximately $55.9&#160;million, including $17.4&#160;million for the remainder of 2025, $22.2&#160;million in 2026, $15.4&#160;million in 2027, and $0.9&#160;million in 2028. As of March&#160;31, 2025, our Water &amp;amp; Flowback Services division had an obligation to purchase equipment for approximately $4.0&#160;million during the year ending December 31, 2025. As of March&#160;31, 2025, we also have commitments of $23.8&#160;million related to long-lead power infrastructure for our Completion Fluids &amp;amp; Products Division&#x2019;s proposed bromine plant in Arkansas, including $10.3&#160;million due during the remainder of 2025 and $13.5&#160;million due over five years beginning after electric service is available.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Contingencies Related to Discontinued Operations&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In early 2018, we closed the Maritech Asset Purchase and Sale Agreement (&#x201c;Maritech APA") and Maritech Membership Interest Purchase Agreement (&#x201c;Maritech MIPA&#x201d;) with Orinoco Natural Resources, LLC (&#x201c;Orinoco&#x201d;) that together provided for the purchase by Orinoco of all of Maritech&#x2019;s remaining oil and gas properties and related assets and all outstanding membership interests of Maritech. Under the Maritech APA, Orinoco assumed responsibility for all of Maritech&#x2019;s decommissioning liabilities related to the leases sold to Orinoco (the &#x201c;Orinoco Lease Liabilities&#x201d;) and, under the Maritech MIPA, Orinoco assumed all other liabilities of Maritech, including the decommissioning liabilities associated with Maritech&#x2019;s interests in oil and gas properties previously sold by Maritech and select infrastructure still operated by Maritech (the &#x201c;Legacy Liabilities&#x201d;), subject to certain limited exceptions unrelated to the decommissioning liabilities. To the extent that Maritech or Orinoco fails to satisfy decommissioning liabilities associated with any of the Orinoco Lease Liabilities or the Legacy Liabilities, we may be required to satisfy such liabilities under third party indemnity agreements and corporate guarantees that we previously provided to the U.S. Department of the Interior (&#x201c;BSEE&#x201d;) and other parties, respectively, for which costs may be significant. Pursuant to a Bonding Agreement entered into as part of these Orinoco transactions (the &#x201c;Bonding Agreement&#x201d;), Orinoco provided non-revocable performance bonds from a surety company in an aggregate amount of $46.8&#160;million to cover the performance by Orinoco and Maritech of certain specific asset retirement obligations of Maritech (the &#x201c;Initial Bonds&#x201d;) and agreed to replace the Initial Bonds with other non-revocable performance bonds in the aggregate sum of $47.0&#160;million (collectively, the &#x201c;Replacement Bonds&#x201d;). In the event Orinoco does not provide the Replacement Bonds, Orinoco is required to make certain cash escrow payments to us. To date, no cash escrow payments have been made. On August 16, 2024, we issued a letter to Orinoco and the bond company demanding realignment of the existing bonds and/or issuance of Replacement Bonds pursuant to the terms of the Bonding Agreement to better align bond coverage with the more likely liability risks. To date, no written response has been received.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The payment obligations of Orinoco under the Bonding Agreement were guaranteed by Thomas M. Clarke and Ana M. Clarke pursuant to a separate guaranty agreement (the &#x201c;Clarke Bonding Guaranty Agreement&#x201d;). Orinoco has not delivered the Replacement Bonds and neither it nor the Clarkes has made any of the agreed upon cash escrow payments. We filed a lawsuit against Orinoco and the Clarkes to enforce the terms of the Bonding &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Agreement and the Clarke Bonding Guaranty Agreement. The trial court initially granted summary judgment in favor of Orinoco and the Clarkes, dismissing our claims against Orinoco under the Bonding Agreement and against the Clarkes under the Clarke Bonding Guaranty Agreement. We filed an appeal with the trial court requesting a new trial on the summary judgment or modification of the judgment. On November 5, 2019, the trial court signed an order granting our motion for a new trial and vacating the prior summary judgment order. The parties are awaiting direction from the court on a new scheduling order and/or trial setting. The Initial Bonds, which are non-revocable, remain in effect. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;In addition, Maritech and certain other interest owners have received decommissioning orders from BSEE and could receive additional decommissioning orders in the future. Such decommissioning orders received by Maritech and other interest owners relate to asset retirement obligations for certain properties in the Gulf of America. From time to time, we also receive demand notices from third parties related to certain corporate guarantees or other arrangements covering such decommissioning liabilities. While the ultimate outcome of such matters cannot be predicted at this time, if Maritech or other interest owners default, BSEE or third parties may seek to enforce certain corporate guarantees or third party indemnity agreements against us for a portion of such decommissioning obligations, which may be significant. On February 13, 2025, Arena Energy, LLC filed a complaint in U.S. District Court for the Southern District of Texas seeking indemnification from us and Maritech for decommissioning costs related to a Maritech oil and gas platform in the Gulf of America. We intend to vigorously defend against the claims brought by Arena Energy, LLC but we are presently unable to predict the duration, scope or result of this proceeding. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:38.25pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;If we become liable in the future for any decommissioning liability associated with any property covered by either an Initial Bond or Replacement Bond while such bonds are outstanding and any payment made to us under such bond is insufficient to satisfy such liability, the Bonding Agreement provides that Orinoco will pay us an amount equal to such deficiency. If Orinoco fails to pay any such amount, such amount must be paid by the Clarkes under the Clarke Bonding Guaranty Agreement. Our financial condition and results of operations may be negatively affected if we become liable for a significant portion of the decommissioning liabilities and Orinoco or the Clarkes are unable to cover any such deficiency.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;With respect to certain properties in the Gulf of America, we have been advised that the cost of the decommissioning work to plug and abandon certain wells is projected to be significantly higher than the approximately $10.7&#160;million bond supporting the liability, which was put in place by Maritech and other interest owners based on earlier cost estimates. We have also been advised more recently that Maritech&#x2019;s prior working interest with respect those plugging and abandonment (&#x201c;P&amp;amp;A&#x201d;) costs are expected to exceed its share of the bond. In September 2024, P&amp;amp;A operations commenced pursuant to a cost sharing agreement among certain parties for decommissioning certain properties in the Gulf of America. While Maritech is not a party to this cost sharing agreement, a predecessor of Maritech has advised us that it expects to seek reimbursement from us for the portion of decommissioning costs it has contractually agreed to pay pursuant to the terms of the cost sharing agreement. While the ultimate outcome of this matter cannot be predicted, we could potentially be liable for an estimated amount in the range of $5.8&#160;million to $19.4&#160;million, depending on the outcome of negotiations and whether other partners or property owners in the chain of title fulfill their respective obligations under their agreements. Additionally, we understand that in connection with the P&amp;amp;A operations being performed, Maritech and the other named obligees have made a demand on the related bond. We have made efforts to protect Maritech&#x2019;s proportionate share of the bond proceeds (approximately $3.9&#160;million), including demanding that the surety segregate or ensure that Maritech&#x2019;s share is applied solely to satisfy its proportionate share of the decommissioning costs. We accrued a liability of $5.8&#160;million related to this obligation during the year ended December 31, 2024.&lt;/span&gt;&lt;/div&gt;</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount contextRef="c-102" decimals="-5" id="f-440" unitRef="usd">55900000</us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear contextRef="c-102" decimals="-5" id="f-441" unitRef="usd">17400000</us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary contextRef="c-102" decimals="-5" id="f-442" unitRef="usd">22200000</us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary contextRef="c-102" decimals="-5" id="f-443" unitRef="usd">15400000</us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnSecondAnniversary>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary contextRef="c-102" decimals="-5" id="f-444" unitRef="usd">900000</us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceOnThirdAnniversary>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear contextRef="c-103" decimals="-5" id="f-445" unitRef="usd">4000000</us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount contextRef="c-104" decimals="-5" id="f-446" unitRef="usd">23800000</us-gaap:UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear contextRef="c-104" decimals="-5" id="f-447" unitRef="usd">10300000</us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRemainderOfFiscalYear>
    <us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive contextRef="c-104" decimals="-5" id="f-448" unitRef="usd">13500000</us-gaap:UnrecordedUnconditionalPurchaseObligationDueInRollingYearFive>
    <tti:DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds contextRef="c-105" decimals="-5" id="f-449" unitRef="usd">46800000</tti:DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds>
    <tti:DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds contextRef="c-106" decimals="-5" id="f-450" unitRef="usd">47000000</tti:DiscontinuedOperationAmountsOfMaterialContingentLiabilitiesRemainingPerformanceBonds>
    <us-gaap:LossContingencyEstimateOfPossibleLoss contextRef="c-107" decimals="-5" id="f-451" unitRef="usd">10700000</us-gaap:LossContingencyEstimateOfPossibleLoss>
    <us-gaap:LossContingencyEstimateOfPossibleLoss contextRef="c-108" decimals="-5" id="f-452" unitRef="usd">5800000</us-gaap:LossContingencyEstimateOfPossibleLoss>
    <us-gaap:LossContingencyEstimateOfPossibleLoss contextRef="c-109" decimals="-5" id="f-453" unitRef="usd">19400000</us-gaap:LossContingencyEstimateOfPossibleLoss>
    <us-gaap:LossContingencyReceivableProceeds contextRef="c-110" decimals="-5" id="f-454" unitRef="usd">3900000</us-gaap:LossContingencyReceivableProceeds>
    <tti:DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense contextRef="c-55" decimals="-5" id="f-455" unitRef="usd">5800000</tti:DisposalGroupIncludingDiscontinuedOperationDecommissioningLiabilityExpense>
    <us-gaap:FairValueDisclosuresTextBlock contextRef="c-1" id="f-456">FAIR VALUE MEASUREMENTS&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%"&gt;Financial Instruments&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%;text-decoration:underline"&gt;Investments&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Our investments in Kodiak and Standard Lithium are recorded in investments on our consolidated balance sheets based on the quoted market stock price (Level 1 fair value measurements). The stock component of consideration received from Standard Lithium is initially recorded as unearned income based on the quoted market price at the time the stock is received, then recognized in income over the contract term. Changes in the value of stock are recorded in other (income) expense, net in our consolidated statements of operations.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We also hold investments in convertible notes, common units, and preferred units issued by two privately-held companies. Our investment in certain preferred units were recorded based on observable market-based inputs for preferred units issued to several investors during August through October 2024 (Level 2 fair value measurement). Our investment in convertible notes, common units, and certain preferred units are recorded in our consolidated financial statements based on internal valuations with assistance from a third-party valuation specialist (Level 3 fair value measurement). The valuations are impacted by key assumptions, including the assumed probability and timing of potential debt or equity offerings. One of the convertible notes includes an option to convert the note into equity interests. The change in the fair value of the embedded option, as well as the preferred units and common units, are included in other (income) expense, net in our consolidated statements of operations. The change in the fair value of the convertible note, excluding the embedded option, is included in other comprehensive income (loss) in our consolidated statements of comprehensive income.&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in our investments for the three-month periods ended March&#160;31, 2025 and March&#160;31, 2024&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:2.25pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:28.415%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.786%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.786%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.786%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.791%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other Observable Inputs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at beginning of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,561&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Sale of investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(19,011)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(19,011)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Reclassification between Level 2 and Level 3 fair value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,388)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on equity securities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized loss on embedded option&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on convertible note, excluding embedded option&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at end of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:2.25pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:52.644%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.584%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.584%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.586%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,354&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on equity securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized loss on embedded option&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(199)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(199)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on convertible note, excluding embedded option&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;237&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;237&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Recurring fair value measurements by valuation hierarchy as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:46.191%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.737%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.737%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.739%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total as of&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Standard Lithium&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:3pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Total investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:28.724%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.720%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total as of &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other Observable Inputs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 5.5pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Kodiak&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Standard Lithium&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:3pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;28,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline"&gt;Other&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The fair values of cash, restricted cash, accounts receivable, accounts payable, accrued liabilities, short-term borrowings and long-term debt approximate their carrying amounts. See Note 5 - &#x201c;Long-Term Debt and Other Borrowings&#x201d; for further discussion.&lt;/span&gt;&lt;/div&gt;</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock contextRef="c-1" id="f-457">&lt;div style="padding-left:2.25pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The change in our investments for the three-month periods ended March&#160;31, 2025 and March&#160;31, 2024&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt; &lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:2.25pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:28.415%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.786%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.786%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.786%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.791%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other Observable Inputs&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at beginning of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;19,561&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;28,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Sale of investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(19,011)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(19,011)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Reclassification between Level 2 and Level 3 fair value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(1,388)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on equity securities&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;466&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized loss on embedded option&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(209)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on convertible note, excluding embedded option&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;281&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at end of period&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;padding-left:2.25pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:52.644%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.584%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.584%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.534%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:13.586%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at beginning of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;10,154&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,200&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;17,354&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on equity securities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,994&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized loss on embedded option&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(199)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(199)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Unrealized gain on convertible note, excluding embedded option&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;237&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;237&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:107%"&gt;Investment balance at end of period&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;13,148&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,238&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;20,386&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueAssetsMeasuredOnRecurringBasisUnobservableInputReconciliationTextBlock>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-111" decimals="-3" id="f-458" unitRef="usd">19561000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-112" decimals="-3" id="f-459" unitRef="usd">1388000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-113" decimals="-3" id="f-460" unitRef="usd">7210000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-114" decimals="-3" id="f-461" unitRef="usd">28159000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales contextRef="c-115" decimals="-3" id="f-462" unitRef="usd">19011000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales contextRef="c-116" decimals="-3" id="f-463" unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales contextRef="c-117" decimals="-3" id="f-464" unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales contextRef="c-118" decimals="-3" id="f-465" unitRef="usd">19011000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetSales>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 contextRef="c-115" decimals="-3" id="f-466" unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 contextRef="c-116" decimals="-3" id="f-467" unitRef="usd">-1388000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 contextRef="c-117" decimals="-3" id="f-468" unitRef="usd">1388000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3 contextRef="c-118" decimals="-3" id="f-469" unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetTransfersOutOfLevel3>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-119" decimals="-3" id="f-470" unitRef="usd">466000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-120" decimals="-3" id="f-471" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-121" decimals="-3" id="f-472" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-122" decimals="-3" id="f-473" unitRef="usd">466000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-123" decimals="-3" id="f-474" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-124" decimals="-3" id="f-475" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-125" decimals="-3" id="f-476" unitRef="usd">-209000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-126" decimals="-3" id="f-477" unitRef="usd">-209000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-127" decimals="-3" id="f-478" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-128" decimals="-3" id="f-479" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-129" decimals="-3" id="f-480" unitRef="usd">281000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-130" decimals="-3" id="f-481" unitRef="usd">281000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-131" decimals="-3" id="f-482" unitRef="usd">1016000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-132" decimals="-3" id="f-483" unitRef="usd">0</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-133" decimals="-3" id="f-484" unitRef="usd">8670000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-134" decimals="-3" id="f-485" unitRef="usd">9686000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-135" decimals="-3" id="f-486" unitRef="usd">10154000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-136" decimals="-3" id="f-487" unitRef="usd">7200000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-137" decimals="-3" id="f-488" unitRef="usd">17354000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-138" decimals="-3" id="f-489" unitRef="usd">2994000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-139" decimals="-3" id="f-490" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-140" decimals="-3" id="f-491" unitRef="usd">2994000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-141" decimals="-3" id="f-492" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-142" decimals="-3" id="f-493" unitRef="usd">-199000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-143" decimals="-3" id="f-494" unitRef="usd">-199000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-144" decimals="-3" id="f-495" unitRef="usd">0</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-145" decimals="-3" id="f-496" unitRef="usd">237000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss contextRef="c-146" decimals="-3" id="f-497" unitRef="usd">237000</us-gaap:FairValueAssetsMeasuredOnRecurringBasisChangeInUnrealizedGainLoss>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-147" decimals="-3" id="f-498" unitRef="usd">13148000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-148" decimals="-3" id="f-499" unitRef="usd">7238000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue contextRef="c-149" decimals="-3" id="f-500" unitRef="usd">20386000</us-gaap:FairValueMeasurementWithUnobservableInputsReconciliationRecurringBasisAssetValue>
    <us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock contextRef="c-1" id="f-501">&lt;div style="padding-left:2.25pt;text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Recurring fair value measurements by valuation hierarchy as of March&#160;31, 2025 and December&#160;31, 2024 are as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:46.191%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.737%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.737%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.739%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total as of&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Standard Lithium&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,016&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:3pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Total investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,686&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:28.724%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.712%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:15.720%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Fair Value Measurements Using&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total as of &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Quoted Prices in Active Markets for Identical Assets or Liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Other Observable Inputs&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Significant Unobservable Inputs&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Description&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 5.5pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 1)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 2)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(Level 3)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Kodiak&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;18,393&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 4pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Investment in Standard Lithium&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,168&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:3pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other investments&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,598&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,388&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;7,210&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;Investments&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:120%"&gt;28,159&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-74" decimals="-3" id="f-502" unitRef="usd">1016000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-150" decimals="-3" id="f-503" unitRef="usd">1016000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-151" decimals="-3" id="f-504" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-76" decimals="-3" id="f-505" unitRef="usd">8670000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-152" decimals="-3" id="f-506" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-153" decimals="-3" id="f-507" unitRef="usd">8670000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-10" decimals="-3" id="f-508" unitRef="usd">9686000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-73" decimals="-3" id="f-509" unitRef="usd">18393000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-154" decimals="-3" id="f-510" unitRef="usd">18393000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-155" decimals="-3" id="f-511" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-156" decimals="-3" id="f-512" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-75" decimals="-3" id="f-513" unitRef="usd">1168000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-157" decimals="-3" id="f-514" unitRef="usd">1168000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-158" decimals="-3" id="f-515" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-159" decimals="-3" id="f-516" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-77" decimals="-3" id="f-517" unitRef="usd">8598000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-160" decimals="-3" id="f-518" unitRef="usd">0</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-161" decimals="-3" id="f-519" unitRef="usd">1388000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-162" decimals="-3" id="f-520" unitRef="usd">7210000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EquitySecuritiesFvNi contextRef="c-11" decimals="-3" id="f-521" unitRef="usd">28159000</us-gaap:EquitySecuritiesFvNi>
    <us-gaap:EarningsPerShareTextBlock contextRef="c-1" id="f-522">NET INCOME PER SHARE&lt;div style="text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a reconciliation of the weighted average number of common shares outstanding with the number of shares used in the computations of net income per common and common equivalent share:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.469%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.471%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-4.5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Number of weighted average common shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;130,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assumed vesting of equity awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,407&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-4.5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Average diluted shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;133,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock contextRef="c-1" id="f-523">&lt;div style="text-align:justify;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a reconciliation of the weighted average number of common shares outstanding with the number of shares used in the computations of net income per common and common equivalent share:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:63.028%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.469%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.532%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:16.471%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;br/&gt;March 31,&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;2024&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-4.5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Number of weighted average common shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,350&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;130,453&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 10pt;text-align:left;text-indent:-4.5pt;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Assumed vesting of equity awards&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,407&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;1,670&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="padding-left:9pt;text-indent:-4.5pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Average diluted shares outstanding&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;133,757&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;132,123&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-1" decimals="-3" id="f-524" unitRef="shares">132350000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="c-9" decimals="-3" id="f-525" unitRef="shares">130453000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c-1" decimals="-3" id="f-526" unitRef="shares">1407000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="c-9" decimals="-3" id="f-527" unitRef="shares">1670000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-1" decimals="-3" id="f-528" unitRef="shares">133757000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="c-9" decimals="-3" id="f-529" unitRef="shares">132123000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:SegmentReportingDisclosureTextBlock contextRef="c-1" id="f-530">INDUSTRY SEGMENTS&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;We manage our operations through two segments: Completion Fluids &amp;amp; Products Division and Water &amp;amp; Flowback Services Division.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Summarized financial information concerning the business segments is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:56.356%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.864%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.700%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Completion Fluids &amp;amp; Products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Water &amp;amp; Flowback Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;93,018&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;64,122&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;157,140&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of product sales and services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;54,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104,565&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation, amortization and accretion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Impairments and other charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,683&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,735&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(115)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(719)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net income (loss) before taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;30,677&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(8,888)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(16,703)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;5,086&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;13,843&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4,064&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;49&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;17,956&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;318,848&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;162,365&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;132,872&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;614,085&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Completion Fluids &amp;amp; Products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Water &amp;amp; Flowback Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;77,282&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;73,690&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;150,972&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of product sales and services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;62,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;111,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation, amortization and accretion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,756&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,693&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,503&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(269)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,952&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Loss on debt extinguishment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;215&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(548)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,645)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,978)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net income (loss) before taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;19,792&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;721&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(19,218)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;1,295&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;7,705&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;8,045&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;77&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;15,827&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;290,788&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;158,475&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;155,932&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;605,195&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:SegmentReportingDisclosureTextBlock>
    <us-gaap:NumberOfOperatingSegments
      contextRef="c-1"
      decimals="INF"
      id="f-531"
      unitRef="segment">2</us-gaap:NumberOfOperatingSegments>
    <us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock contextRef="c-1" id="f-532">&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Summarized financial information concerning the business segments is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:56.356%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.864%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.695%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.530%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.700%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Completion Fluids &amp;amp; Products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Water &amp;amp; Flowback Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;93,018&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;64,122&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;157,140&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of product sales and services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;54,315&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;50,250&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;104,565&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation, amortization and accretion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,177&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,880&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;94&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,151&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Impairments and other charges&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;518&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,683&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,735&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,716&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;24,134&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(115)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(7)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,846&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,724&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(719)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;9,634&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;47&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,962&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net income (loss) before taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;30,677&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(8,888)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(16,703)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;5,086&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;13,843&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4,064&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;49&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;17,956&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2025&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;318,848&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;162,365&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;132,872&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;614,085&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;March 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Completion Fluids &amp;amp; Products&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Water &amp;amp; Flowback Services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Corporate&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Revenue&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;77,282&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;73,690&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;150,972&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Cost of product sales and services&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;48,464&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;62,650&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;111,114&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Depreciation, amortization and accretion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;2,387&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,288&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;81&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;8,756&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;General and administrative expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,693&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;4,503&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;11,102&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;22,298&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Interest (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(269)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;76&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;6,145&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,952&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Loss on debt extinguishment&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;5,535&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;Other (income) expense, net&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;215&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(548)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,645)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(3,978)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Net income (loss) before taxes&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;19,792&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;721&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;(19,218)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;1,295&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Capital expenditures&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;7,705&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;8,045&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;77&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;15,827&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt 0 7pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;Total assets&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;290,788&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;158,475&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;155,932&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;605,195&lt;/span&gt;&lt;span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-163" decimals="-3" id="f-533" unitRef="usd">93018000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-164" decimals="-3" id="f-534" unitRef="usd">64122000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-165" decimals="-3" id="f-535" unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-1" decimals="-3" id="f-536" unitRef="usd">157140000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-163" decimals="-3" id="f-537" unitRef="usd">54315000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-164" decimals="-3" id="f-538" unitRef="usd">50250000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-165" decimals="-3" id="f-539" unitRef="usd">0</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-1" decimals="-3" id="f-540" unitRef="usd">104565000</us-gaap:CostOfGoodsAndServicesSold>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-163" decimals="-3" id="f-541" unitRef="usd">2177000</tti:DepreciationDepletionAmortizationAndAccretion>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-164" decimals="-3" id="f-542" unitRef="usd">6880000</tti:DepreciationDepletionAmortizationAndAccretion>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-165" decimals="-3" id="f-543" unitRef="usd">94000</tti:DepreciationDepletionAmortizationAndAccretion>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-1" decimals="-3" id="f-544" unitRef="usd">9151000</tti:DepreciationDepletionAmortizationAndAccretion>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse contextRef="c-163" decimals="-3" id="f-545" unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse contextRef="c-164" decimals="-3" id="f-546" unitRef="usd">518000</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse contextRef="c-165" decimals="-3" id="f-547" unitRef="usd">0</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:ImpairmentOfLongLivedAssetsHeldForUse contextRef="c-1" decimals="-3" id="f-548" unitRef="usd">518000</us-gaap:ImpairmentOfLongLivedAssetsHeldForUse>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-163" decimals="-3" id="f-549" unitRef="usd">6683000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-164" decimals="-3" id="f-550" unitRef="usd">5735000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-165" decimals="-3" id="f-551" unitRef="usd">11716000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-1" decimals="-3" id="f-552" unitRef="usd">24134000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-163" decimals="-3" id="f-553" unitRef="usd">115000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-164" decimals="-3" id="f-554" unitRef="usd">7000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-165" decimals="-3" id="f-555" unitRef="usd">-4846000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-1" decimals="-3" id="f-556" unitRef="usd">-4724000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-163" decimals="-3" id="f-557" unitRef="usd">719000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-164" decimals="-3" id="f-558" unitRef="usd">-9634000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-165" decimals="-3" id="f-559" unitRef="usd">-47000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-1" decimals="-3" id="f-560" unitRef="usd">-8962000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-163" decimals="-3" id="f-561" unitRef="usd">30677000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-164" decimals="-3" id="f-562" unitRef="usd">-8888000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-165" decimals="-3" id="f-563" unitRef="usd">-16703000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-1" decimals="-3" id="f-564" unitRef="usd">5086000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-163" decimals="-3" id="f-565" unitRef="usd">13843000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-164" decimals="-3" id="f-566" unitRef="usd">4064000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-165" decimals="-3" id="f-567" unitRef="usd">49000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-1" decimals="-3" id="f-568" unitRef="usd">17956000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:Assets contextRef="c-166" decimals="-3" id="f-569" unitRef="usd">318848000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-167" decimals="-3" id="f-570" unitRef="usd">162365000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-168" decimals="-3" id="f-571" unitRef="usd">132872000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-10" decimals="-3" id="f-572" unitRef="usd">614085000</us-gaap:Assets>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-169" decimals="-3" id="f-573" unitRef="usd">77282000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-170" decimals="-3" id="f-574" unitRef="usd">73690000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-171" decimals="-3" id="f-575" unitRef="usd">0</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax contextRef="c-9" decimals="-3" id="f-576" unitRef="usd">150972000</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-169" decimals="-3" id="f-577" unitRef="usd">48464000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-170" decimals="-3" id="f-578" unitRef="usd">62650000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-171" decimals="-3" id="f-579" unitRef="usd">0</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="c-9" decimals="-3" id="f-580" unitRef="usd">111114000</us-gaap:CostOfGoodsAndServicesSold>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-169" decimals="-3" id="f-581" unitRef="usd">2387000</tti:DepreciationDepletionAmortizationAndAccretion>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-170" decimals="-3" id="f-582" unitRef="usd">6288000</tti:DepreciationDepletionAmortizationAndAccretion>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-171" decimals="-3" id="f-583" unitRef="usd">81000</tti:DepreciationDepletionAmortizationAndAccretion>
    <tti:DepreciationDepletionAmortizationAndAccretion contextRef="c-9" decimals="-3" id="f-584" unitRef="usd">8756000</tti:DepreciationDepletionAmortizationAndAccretion>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-169" decimals="-3" id="f-585" unitRef="usd">6693000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-170" decimals="-3" id="f-586" unitRef="usd">4503000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-171" decimals="-3" id="f-587" unitRef="usd">11102000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="c-9" decimals="-3" id="f-588" unitRef="usd">22298000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-169" decimals="-3" id="f-589" unitRef="usd">269000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-170" decimals="-3" id="f-590" unitRef="usd">-76000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-171" decimals="-3" id="f-591" unitRef="usd">-6145000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:InterestIncomeExpenseNet contextRef="c-9" decimals="-3" id="f-592" unitRef="usd">-5952000</us-gaap:InterestIncomeExpenseNet>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-169" decimals="-3" id="f-593" unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-170" decimals="-3" id="f-594" unitRef="usd">0</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-171" decimals="-3" id="f-595" unitRef="usd">-5535000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:GainsLossesOnExtinguishmentOfDebt contextRef="c-9" decimals="-3" id="f-596" unitRef="usd">-5535000</us-gaap:GainsLossesOnExtinguishmentOfDebt>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-169" decimals="-3" id="f-597" unitRef="usd">-215000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-170" decimals="-3" id="f-598" unitRef="usd">548000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-171" decimals="-3" id="f-599" unitRef="usd">3645000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="c-9" decimals="-3" id="f-600" unitRef="usd">3978000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-169" decimals="-3" id="f-601" unitRef="usd">19792000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-170" decimals="-3" id="f-602" unitRef="usd">721000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-171" decimals="-3" id="f-603" unitRef="usd">-19218000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="c-9" decimals="-3" id="f-604" unitRef="usd">1295000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-169" decimals="-3" id="f-605" unitRef="usd">7705000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-170" decimals="-3" id="f-606" unitRef="usd">8045000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-171" decimals="-3" id="f-607" unitRef="usd">77000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:PaymentsToAcquireProductiveAssets contextRef="c-9" decimals="-3" id="f-608" unitRef="usd">15827000</us-gaap:PaymentsToAcquireProductiveAssets>
    <us-gaap:Assets contextRef="c-172" decimals="-3" id="f-609" unitRef="usd">290788000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-173" decimals="-3" id="f-610" unitRef="usd">158475000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-174" decimals="-3" id="f-611" unitRef="usd">155932000</us-gaap:Assets>
    <us-gaap:Assets contextRef="c-51" decimals="-3" id="f-612" unitRef="usd">605195000</us-gaap:Assets>
    <ecd:NonRule10b51ArrAdoptedFlag contextRef="c-1" id="f-613">false</ecd:NonRule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrAdoptedFlag contextRef="c-1" id="f-614">false</ecd:Rule10b51ArrAdoptedFlag>
    <ecd:Rule10b51ArrTrmntdFlag contextRef="c-1" id="f-615">false</ecd:Rule10b51ArrTrmntdFlag>
    <ecd:NonRule10b51ArrTrmntdFlag contextRef="c-1" id="f-616">false</ecd:NonRule10b51ArrTrmntdFlag>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
